Lại là bước chân
Submit solution
Points:
1
Time limit:
1.0s
Memory limit:
98M
Author:
Problem type
Allowed languages
Ada, Assembly, Awk, C, C++, C11, CLANG, CLANGX, Classical, COBOL, Coffee, CSC, D lang, DART, F95, FORTH, Fortrn, GAS32, GO, Haskell, Itercal, Java, kotlin, LEAN, LISP, LUA, MONOVB, Nasm, OCAML, Pascal, Perl, php, PIKE, prolog, Pypy, Python, Ruby 2, RUST, Scala, SCM, SED, SWIFT, TCL, TUR, V8JS, VB, ZIG
Bạn đang đứng trên trục \(Ox\) tại điểm 0 và bạn muốn di chuyển đến một điểm số nguyên \(x\)>0.
Bạn có thể thực hiện một số bước nhảy. Giả sử bạn hiện đang ở điểm \(y\) và nhảy lần thứ \(k\). Bạn có thể:
- hoặc nhảy đến điểm \(y+k\)
- hoặc nhảy đến điểm \(y-1\). Số lần nhảy tối thiểu bạn cần để đạt được điểm là bao nhiêu \(x\)?
Input
- Dòng đầu tiên chứa một số nguyên duy nhất \(t\) \((1 \le t \le 1000)\) - số lượng trường hợp.
- Số nguyên duy nhất của mỗi trường hợp \(x\) \((1 \le x \le 10^6)\) - điểm đến.
Output
- Số lần nhảy tối thiểu để đạt được \(x\).
Example
Input
2
1
2
Output
1
3
Note:
Trong trường hợp đầu tiên x = 1, vì vậy bạn chỉ cần một bước nhảy: lần nhảy 1 từ 0 đến 0+1=1.
Trong trường hợp thứ hai x = 2. Bạn cần ít nhất ba lần nhảy:
- lần nhảy 1 từ 0 đến 0+1=1;
- lần nhảy 2 từ 1 đến 1+2=3;
- lần nhảy 3 từ 3 đến 3-1=2;
Comments
(x-1 | x+k) --> giảm k+1
Check test bạn ơi.
Với x = 4 ta chỉ cần 3 lượt nhảy: Lần 1 nhảy tới -1 (0 - 1), lần 2 nhảy tới 1 (-1 + 2), lần 3 nhảy tới 4 (1 + 3). Code của bạn (và của 2 người khác) đều ra 5.
Oke , mình tưởng x>0.