이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include<bits/stdc++.h>
using namespace std;
int currmin, currmax, pre, n, tmp;
vector<bool> used;
vector<int> ans;
int getmin(){
while(used[currmin])currmin++;
return currmin;
}
int getmax(){
while(used[currmax])currmax--;
return currmax;
}
void query(int x){
cout << x << " ";
used[x]=true;
}
int main(){
cin >> n;
used.assign(2*n, false);
currmin = 1;
currmax = 2*n-1;
cin >> tmp;
query(tmp);
pre = tmp;
for(int i = 0; i < n-1; i++){
cin >> tmp;
if(tmp > pre){
if(!used[tmp])query(tmp);
else query(getmax());
query(getmax());
}
else if(tmp < pre){
if(!used[tmp])query(tmp);
else query(getmin());
query(getmin());
}
else{
query(getmin());
query(getmax());
}
pre = tmp;
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |