这是题面:
然后我写了如下代码:
#include<iostream>
#include<map>
#include<vector>
#include<algorithm>
using namespace std;
#define int long long int
const int maxLine=500+10;
map<char,char> mymap;
int arr[maxLine]={1,2,4,8,16,32};
int index=0;
int n,m,nums;
signed main(){
int t,n,temp;
cin>>t;
for(int i=0;i<t;i++){
cin>>n;
cin>>temp;
bool flag=false;
for(int j=1;j<n;j++){
cin>>nums;
if (((j-1)&j)!=0 && temp>nums) {
flag=true;
cout<<j<<"NO"<<endl;
break;
}
temp=nums;
}
if (!flag) cout<<"YES"<<endl;
}
return 0;
}
哈哈哈隔,硬是wa了好几发,你发现错误了吗
这个错误是因为输入一组数据中途就能出IO了,但是这组数组还没读完,没办法抛弃,只能然循环继续跑,而不能break,所以简单打个标记就好了!