原题:https://fjnuacm.top/d/contest/p/29?tid=635bad6e691055e12dce5282
题意
带佐在数轴上。
思路
首先,结论是:首项为
下面给出证明思路:
上述结论的做法是:
令
, ,则只需在 时刻停留即可保证最后一步恰好走到 。 上述结论的合理性:
① 我们不可能折回,因为折回后如果直接返回,只能前进
,代价大于在 时刻停留的代价(可以根据等差数列理解,列方程来严格证明),而停留后返回代价明显更大(停留需要很长时间,而折回后返回前进的距离远没有这么长)。 ② 我们不可以停留太久,显然停留一次比停留多次代价小。
因此,用一个
值得注意的是,上述证明不严密。
对应AC代码
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
long x = scanner.nextLong(), t = 0, i = 1;
while(t < x){
t += i;
i ++;
}
System.out.println(i - 1);
}
}
暴力就完事了
- 本文链接 https://floating-ocean.github.io/blog_old/posts/1494271354/
- 版权声明 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!