1.题目描述
Beinga nonconformist, Volodya is displeased with the current state of things,particularly with the order of natural numbers (natural number is positiveinteger number). He is determined to rearrange them. But there are too manynatural numbers, so Volodya decided to start with the first n. He writes downthe following sequence of numbers: firstly all odd integers from 1 to n (inascending order), then all even
integersfrom 1 to n (also in ascending order). Help our hero to find out which numberwill stand at the position number k.
Input
Theonly line of input contains integers n and k (1≤k≤n≤1e14).
Output
Printthe number that will stand at the position number k after Volodya'smanipulations.
Sampletest(s) input
10 3
77
output
5
6
Note
In thefirst sample Volodya's sequence will look like this: {1, 3, 5, 7, 9, 2, 4, 6,8, 10}. The third place in the sequence is therefore occupied by the number 5.
Hint
注意数据的类型
use__int64 to read data and use %I64d to output data
输入格式
The onlyline of input contains integers n and k (1≤k≤n≤1e14).
输出
Printthe number that will stand at the position number k after Volodya'smanipulations.
样例输入
10 3
7 7
样例输出
5
6
代码如下:
#include<iostream>
using namespace std;
int main(void)
{
longlong n,k;
while(cin>>n>>k)
{
longlong Result=0;
if(n%2==0)
{
if(k<=n/2)
{
Result=2*k-1;
}
else
{
Result=2*k-n;
}
cout<<Result<<endl;
}
else
{
if(k<=n/2+1)
{
Result=2*k-1;
}
else
{
Result=2*k-n-1;
}
cout<<Result<<endl;
}
}
return0;
}