BISHOPS - Bishops

Yesterday was Sam's birthday. The most interesting gift was definitely the chessboard. Sam quickly learned the rules of chess and defeated his father, all his friends, his little sister, and now no one wants to play with him any more.

So he decided to play with another birthday gift – a Book of Math Problems for Young Mathematicians. He opened the book somewhere in the middle and read the following problem: "How many knights can be placed on a chessboard without threatening each other?" After a while he realized that this was trivial and moved on to the next problem: "How many bishops can be placed on a chessboard without threatening each other?". Sam is in trouble here. He is not able to solve this problem and needs your help.

Sam's chessboard has size N x N. A bishop can move to any distance in any of the four diagonal directions. A bishop threatens another bishop if it can move to the other bishop's position. Your task is to compute the maximum number of bishops that can be placed on a chessboard in such a way that no two bishops threaten each other.

Input

The input file consists of several lines. The line number i contains a single positive integer N representing the size of the i-th chessboard. [1 <= N <= 10^100]

Output

The output file should contain the same number of lines as the input file. The i-th line should contain one number – the maximum number of bishops that can be placed on i-th chessboard without threatening each other.

Example

Input:
2
3

Output:
2
4

Added by:Roman Sol
Date:2005-04-17
Time limit:1s
Source limit:10000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All
Resource:IPSC 2004

hide comments
2013-01-14 06:09:33 Haijun Deng
always get NZEC while using following code to read file in Java
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(args[0])));
String data = null;
while((data = br.readLine())!=null)
{
//other code
}
2013-01-14 03:52:10 Liber(China)
Extremely easy using Ruby
2012-12-25 10:26:11 viraj
@AbhiShek Tiwari can you tell me how you find EOF in java ?
2012-12-23 09:00:40 Abhishek Tiwari
was doing a silly mistake.it was easy with java.;)
2012-12-16 20:37:33 Aayush
Getting wrong answer ( C++)...no idea why!! all test cases seem to run fine on my pc...



Last edit: 2012-12-16 20:38:22
2012-12-13 10:26:36 arijit pande
Quite simple in python, difficult in C
2012-12-09 12:42:39 cenation
accepted with bad time........
2012-12-01 06:20:16 Debasish
using java was useful!!
2012-11-28 13:18:46 Artur Laskowski
You have to make your own new type :)
2012-08-28 12:29:31 gourav
hey.. can anyone tell me how to deal with the n like 10^100 ? it is out of range of any data type in C and it is used in many problems. So please tell how to deal ?
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.