前三点tle
后面都是wa
#include<bits/stdc++.h>
using namespace std;
int n,a[1001];
int num(int a){
if(a>=2){
return a-2;
}
return a;
}
bool vis(int i){
return a[i]!=2&&a[i]!=3;
}
bool end(){
for(int i=0;i<n;i++){
if(vis(i)){
return 1;
}
}
return 0;
}
int place(int i){
int ans=i-1;
while(a[i]!=1&&a[i]!=0){
ans--;
}
return ans;
}
int main(){
cin>>n;
for(int i=0;i<n;i++){
cin>>a[i];
}
int flag=0;
while(end()){
for(int i=0;i<n;i++){
if(flag==0){
cout<<1<<" ";
flag=1;
continue;
}
if(vis(i)){
if(a[i]!=num(place(i-1))){
cout<<i+1<<" ";
a[i]+=2;
}
}
}
cout<<endl;
}
return 0;
}
orz