我正在尝试解决问题https://www.codechef.com/OCT19B/problems/S10E/ 厨师想买一部新手机,但他不愿意花很多钱。相反,他每天检查自己选择的模型的价格,然后等待价格下降到可接受的值。到目前为止,他已经观察了N天的价格(从1到N)。对于每个有效i,第i天的价格为Pi
美元。
每天,如果厨师的电话价格严格低于过去五天观察到的所有价格,厨师就会认为它的价格不错。如果前五天中的某些时间没有价格记录(因为Chef尚未在当天开始检查价格),则Chef只会忽略前一天-我们可以说他认为当天的价格为是无限的。
现在,厨师想知道―他认为价格好几天了?查找这些天数。 代码是:
int l;
cin>>l;
while(l--){
int n,sum=1,sx=0;
cin>>n;
int a[n];
for(int i=0;i<n;i++)
cin>>a[i];
for(int i=1;i<4;i++){
sx=0;
for(int j=0;j<i;j++)
if(a[j]>=a[i])
sx++;
if(sx==i)
sum++;
}
for(int i=0;i<n;i++){
int k=i,s=0;
for(int j=i;j<k+5&&k+5<n;j++){
if(a[j]>=a[k+5]){
s++;
}
}
if(s==5){
sum++;
}
s=0;
}
cout<<sum<<endl;
}
return 0;}
我在codechef中获得了给定测试用例的输出,但是在提交时显示错误的答案