Consider some square matrix A with side n consisting of zeros and ones. There are n rows numbered from 1 to n from top to bottom and n columns numbered from 1 to n from left to right in this matrix. We'll denote the element of the matrix which is located at the intersection of the i-row and the j-th column as Ai, j.

Let's call matrix A clear if no two cells containing ones have a common side.

Let's call matrix A symmetrical if it matches the matrices formed from it by a horizontal and/or a vertical reflection. Formally, for each pair (i, j) (1 ≤ i, j ≤ n) both of the following conditions must be met: Ai, j = An - i + 1, j and Ai, j = Ai, n - j + 1.

Let's define the sharpness of matrix A as the number of ones in it.

Given integer x, your task is to find the smallest positive integer n such that there exists a clear symmetrical matrix A with side n and sharpness x.

Input

The only line contains a single integer x (1 ≤ x ≤ 100) — the required sharpness of the matrix.

Output

Print a single number — the sought value of n.

Examples

Input

4


Output

3


Input

9


Output

5

Note

The figure below shows the matrices that correspond to the samples:

<image>
import java.io.BufferedInputStream;
import java.util.Scanner;

/**
 * User: khuongnd
 * Date: 6/12/12
 * Time: 9:48 CH
 */
public class C {
	private static int BUFFER_SIZE = 16 * 1024 * 1024;
	private static Long oo = Long.MAX_VALUE / 2;
	private int N, K, x;
	private int result;
	private boolean F[][];

	public void read(Scanner reader) {
		x = reader.nextInt();
	}

	public void process() {
		result = 1000;
		for (int d = 0; d <= 100; d++)
			if (check(d, x)) {
				result = d;
				return;
			}
	}

	private boolean check(int n, int x) {
		if (n % 2 == 0) {
			return false;
		} else {
			int half = n / 2 + 1;
			int center = 0;
			if (x % 2 == 1) {
				center = 1;
			}
			int over = 4 * ((half * half + center) / 2), xmax, t;
			t = 2 * ((half - center) / 2);
			xmax = over - 2 * t - 3 * center;
			//System.out.println(n + " " + center + " " + t + " " + xmax + " " + over + " " + ((over - center - x) / 2));
			return (xmax >= x) && !(t == 0 && x % 4 == 3);
		}
	}

	public void print() {
		System.out.println(result);
	}

	public static void main(String args[]) {
		try {
			Scanner reader = new Scanner(new BufferedInputStream(System.in, BUFFER_SIZE));
			C c = new C();
			c.read(reader);
			c.process();
			c.print();
			reader.close();
		} catch (Exception ex) {
			ex.printStackTrace();
		}
	}
}
