省略
省略
C++に変換後のコードはこちら
int N, A[2d5], T, X, Y;
set<int> s;
{
int i;
rd(N);
rep(i,N) A[i] = i + 1;
s.insert(int_inf);
REP(rd_int()){
rd(T,X--,Y--);
if(T==1){
swap(A[X], A[X+1]);
s.insert(X);
s.insert(X+1);
s.insert(X+2);
} else {
for(;;){
i = *s.lower_bound(X+1);
if(i > Y) break;
if(A[i] > A[i-1]) s.erase(i), continue;
s.insert(i+1);
while(i > X && A[i] < A[i-1]){
swap(A[i], A[i-1]);
i--;
s.insert(i);
}
}
}
}
wt(A(N));
}
Current time: 2024年04月24日12時20分48秒
Last modified: 2021年01月02日17時05分28秒 (by laycrs)
Tags: Competitive_Programming_Incomplete AtCoder
トップページに戻る
Logged in as: unknown user (not login)