JOI公式サイトのサンプルデータも1秒以内に処理を終えたのになぜかAOJ通りません。
どこがおかしいのでしょうか?ご指導よろしくお願いいたします。
#include <iostream>
#include <algorithm>
#include <deque>
#define rep(i,n) for(i=0;i<n;i++)
#define rept(i,n) for(int i=0;i<n;i++)
using namespace std;
void view(deque<int> d){
deque<int>::iterator it=d.begin();
for(;it!=d.end();it++){
cout<<*it<<endl;
}
}
int main(){
int i, j, n, m;
while(cin>>n>>m,n,m){
deque<int> temp, dat, temp2;
dat.clear();
for(i=1;i<=2*n;i++)
dat.push_back(i);
rept(k,m){
cin>>i;
temp.clear();
temp2.clear();
if(i!=0){
rep(j,i){
if(!dat.empty()){
temp.push_back(dat.front());
dat.pop_front();
}
}
while(!temp.empty()){
dat.push_back(temp.front());
temp.pop_front();
}
}else if(!i){
rep(j,n){
if(!dat.empty()){
temp.push_back(dat.front());
dat.pop_front();
}
}
rep(j,n){
if(!dat.empty()){
temp2.push_back(dat.front());
dat.pop_front();
}
}
rep(j,2*n){
if(j%2){
if(!temp2.empty()){
dat.push_back(temp2.front());
temp2.pop_front();
}
}else{
if(!temp.empty()){
dat.push_back(temp.front());
temp.pop_front();
}
}
}
}
}
view(dat);
}
return 0;
}