CF1455B.Jumps
普及-
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You are standing on the OX-axis at point 0 and you want to move to an integer point x>0.
You can make several jumps. Suppose you're currently at point y (y may be negative) and jump for the k-th time. You can:
- either jump to the point y+k
- or jump to the point y−1.
What is the minimum number of jumps you need to reach the point x?
你站在 OX-轴上的点 0 处,希望移动到一个正整数点 x>0。
你可以进行若干次跳跃。假设你当前位于点 y(y 可能为负数),且这是第 k 次跳跃。那么你可以:
- 跳跃至点 y+k;
- 或跳跃至点 y−1。
到达点 x 所需的最少跳跃次数是多少?
输入格式
The first line contains a single integer t (1≤t≤1000) — the number of test cases.
The first and only line of each test case contains the single integer x (1≤x≤106) — the destination point.
第一行包含一个整数 t(1≤t≤1000)—— 测试用例的数量。
每个测试用例仅有一行,包含一个整数 x(1≤x≤106)—— 目标点。
输出格式
For each test case, print the single integer — the minimum number of jumps to reach x. It can be proved that we can reach any integer point x.
对于每个测试用例,输出一个整数——到达 x 所需的最少跳跃次数。可以证明,我们总能到达任意整数点 x。
输入输出样例
输入#1
5 1 2 3 4 5
输出#1
1 3 2 3 4
说明/提示
In the first test case x=1, so you need only one jump: the 1-st jump from 0 to 0+1=1.
In the second test case x=2. You need at least three jumps:
- the 1-st jump from 0 to 0+1=1;
- the 2-nd jump from 1 to 1+2=3;
- the 3-rd jump from 3 to 3−1=2;
Two jumps are not enough because these are the only possible variants:
- the 1-st jump as −1 and the 2-nd one as −1 — you'll reach 0−1−1=−2;
- the 1-st jump as −1 and the 2-nd one as +2 — you'll reach 0−1+2=1;
- the 1-st jump as +1 and the 2-nd one as −1 — you'll reach 0+1−1=0;
- the 1-st jump as +1 and the 2-nd one as +2 — you'll reach 0+1+2=3;
In the third test case, you need two jumps: the 1-st one as +1 and the 2-nd one as +2, so 0+1+2=3.
In the fourth test case, you need three jumps: the 1-st one as −1, the 2-nd one as +2 and the 3-rd one as +3, so 0−1+2+3=4.
在第一个测试用例中,x=1,因此你只需要一次跳跃:第 1 次跳跃从 0 到 0+1=1。
在第二个测试用例中,x=2。你至少需要三次跳跃:
- 第 1 次跳跃从 0 到 0+1=1;
- 第 2 次跳跃从 1 到 1+2=3;
- 第 3 次跳跃从 3 到 3−1=2;
两次跳跃是不够的,因为仅存在以下四种可能情形:
- 第 1 次跳跃为 −1,第 2 次跳跃为 −1 —— 你将到达 0−1−1=−2;
- 第 1 次跳跃为 −1,第 2 次跳跃为 +2 —— 你将到达 0−1+2=1;
- 第 1 次跳跃为 +1,第 2 次跳跃为 −1 —— 你将到达 0+1−1=0;
- 第 1 次跳跃为 +1,第 2 次跳跃为 +2 —— 你将到达 0+1+2=3;
在第三个测试用例中,你需要两次跳跃:第 1 次为 +1,第 2 次为 +2,即 0+1+2=3。
在第四个测试用例中,你需要三次跳跃:第 1 次为 −1,第 2 次为 +2,第 3 次为 +3,即 0−1+2+3=4。
输入解题思路,AI测评打分。不知道怎么写?