CF318A.Even Odds

入门

通过率:0%

时间限制:1.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Being a nonconformist, Volodya is displeased with the current state of things, particularly with the order of natural numbers (natural number is positive integer number). He is determined to rearrange them. But there are too many natural numbers, so Volodya decided to start with the first n. He writes down the following sequence of numbers: firstly all odd integers from 1 to n (in ascending order), then all even integers from 1 to n (also in ascending order). Help our hero to find out which number will stand at the position number k.

作为一名特立独行者,沃洛佳对当前的状况(尤其是自然数的排列顺序,自然数指正整数)感到不满。他决心重新排列这些数。但由于自然数数量太多,沃洛佳决定先从前 nn 个自然数开始。他写下如下数列:首先按升序写出 11 到 nn 之间的所有奇数,然后按升序写出 11 到 nn 之间的所有偶数。请帮助这位英雄找出位于第 kk 个位置上的数。

输入格式

The only line of input contains integers n and k (1 ≤ k ≤ n ≤ 1012).

Please, do not use the %lld specifier to read or write 64-bit integers in C++. It is preferred to use the cin, cout streams or the %I64d specifier.

输入仅包含两个整数 nn 和 kk(1 ≤ k ≤ n ≤ 10121 \le k \le n \le 10^{12})。

请注意,在 C++ 中读写 64 位整数时,请勿使用 %lld 说明符。推荐使用 cin、cout 流或 %I64d 说明符。

输出格式

Print the number that will stand at the position number k after Volodya's manipulations.

输出在沃洛佳执行操作后位于第 k 个位置的数字。

输入输出样例

  • 输入#1

    10 3

    输出#1

    5
  • 输入#2

    7 7

    输出#2

    6

说明/提示

In the first 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.

在第一个样例中,沃洛佳的序列如下:{1, 3, 5, 7, 9, 2, 4, 6, 8, 10}。因此,序列中第三位上的数是 5。

输入解题思路,AI测评打分。不知道怎么写?

首页