ABC056
――――――――――――――――――――――――
問題文
無限に左右に伸びている数直線上の0の地点に時刻0にカンガルーがいます。 カンガルーは時刻i−1からiにかけて、なにもしないか、もしくは長さがちょうどiのジャンプを、左右どちらかの方向を選んで行えます。 つまり、時刻
i−1に座標xにいたとすると、時刻iにはx−i,x,x+iのどれかに存在することが出来ます。 カンガルーの家は座標Xにあります。カンガルーはできるだけ早く座標Xまで移動しようとしています。 カンガルーが座標
Xに到着する時刻の最小値を求めてください。
制約
Xは整数1≦X≦10^9
――――――――――――――――――――――――
ずっと右にジャンプさせれば、最短でXにたどり着けるから、ひたすらiを足していく…。なんかあじけないけどOK!
#include <bits/stdc++.h>
using namespace std;
int main() {
int x; cin >> x;
int ans=0;
int d = 0;
while(x>d){
ans++;
d += ans;
}
cout << ans << endl;
}