Saturday 11 April 2009

POJ 1068

笨方法



#include <iostream>
using namespace std;
enum bracket{
LEFT=0,
RIGHT=1,
VISITED=2
};
int main() {
int N;
for(cin>>N;N;--N){
int n,i,a[32];
bracket b[64]={LEFT};
cin>>n;
for(i=0;i<n;++i) {
cin>>a[i];
b[a[i]+i]=RIGHT;
}
for(i=0;i<n<<1;++i){
if(b[i]==RIGHT){
int t=0;
for(int j=i;j>=0;--j){
if(b[j]==RIGHT) ++t;
else if(b[j]==LEFT){
b[j]=VISITED;
break;
}
}
cout<<t<<" ";
}
}
cout<<endl;
}
return 0;
}

No comments:

Post a Comment