题目描述:
思路:
问题的过程有两种情况。第一种,还未加速到限速就已到达终点。第二种,先加速,后减速到限速。所以分情况模拟即可。
#include <iostream>
#include <algorithm>
#include <string>
#include <cstdio>
#include <cmath>
using namespace std;
typedef unsigned long long ll;
const ll mod=1e9+10;
int main()
{
int K,N;
cin>>K>>N;
while(N--)
{
int X;
cin>>X;
int add=0,reduce=0;
int sp=1,ti=0;
while(1)
{
add+=sp;
ti++;
if(add+reduce>=K)
{
cout<<ti<<endl;
break;
}
if(sp>=X)
{
reduce+=sp;
ti++;
if(add+reduce>=K)
{
cout<<ti<<endl;
break;
}
}
sp++;
}
}
return 0;
}