#8、#9、#10出现TLE
#8
TLE
1.20s/680.00KB
Time Limit Exceeded.
#9
TLE
1.20s/680.00KB
Time Limit Exceeded.
#10
TLE
1.20s/804.00KB
Time Limit Exceeded.
我尝试过优化,但是优化后样例都算不对了。
以下是我的源代码,语言是C++11,求各位大神帮忙看看,谢谢!
#include<bits/stdc++.h>
using namespace std;
int n,days=0;//长度,天数
short d[100000];//坑的深度
bool pd()//判断是否未完工
{
for(int i=1;i<=n;i++)
if(d[i]!=0)
return true;//是,未完工
return false;//否,完工
}
int main()
{
memset(d,0,sizeof(d));
cin>>n;
for(int i=1;i<=n;i++)
cin>>d[i];
do
{
int j=1;
while(d[j]==0)//找到第一个坑
j++;
while(d[j]!=0)//填坑
{
d[j]--;
j++;
}
days++;
}while(pd());//判断是否未完工
cout<<days;
return 0;
}