QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#590811 | #4996. Icy Itinerary | ship2077 | WA | 21ms | 57892kb | C++23 | 1.2kb | 2024-09-26 11:40:02 | 2024-09-26 11:40:03 |
Judging History
answer
#include<bits/stdc++.h>
#include<bits/extc++.h>
using namespace std;
using namespace __gnu_pbds;
constexpr int M=3e5+5;
cc_hash_table<int,int>mp[M];
int n,m;vector<int>ans1,ans2;
int read(){
int x=0;char ch=getchar();
while (!isdigit(ch)) ch=getchar();
while (isdigit(ch)) x=x*10+ch-48,ch=getchar();
return x;
}
int check(int x,int y){return mp[x].find(y)!=mp[x].end();}
int main(){
n=read();m=read();
for (int i=1;i<=m;i++){
int x=read(),y=read();
mp[x][y]=mp[y][x]=1;
}
ans1={1};
for (int i=2;i<=n;i++){
if (check(ans1.back(),i)){
ans1.emplace_back(i);
if (!ans2.empty()&&check(ans1.back(),ans2.back()))
ans1.emplace_back(ans2.back()),ans2.pop_back();
}
else{
ans2.emplace_back(ans1.back());ans1.pop_back();
ans2.emplace_back(i);
if (!ans1.empty()&&!check(ans1.back(),ans2.back()))
ans2.emplace_back(ans1.back()),ans1.pop_back();
ans1.emplace_back(ans2.back());ans2.pop_back();
}
}
for (auto x:ans1) printf("%d ",x);
reverse(ans2.begin(),ans2.end());
for (auto x:ans2) printf("%d ",x);
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 21ms
memory: 57720kb
input:
4 4 1 2 1 3 1 4 3 4
output:
1 3 4 2
result:
ok qwq
Test #2:
score: -100
Wrong Answer
time: 18ms
memory: 57892kb
input:
5 0
output:
5 4 3 2 1
result:
wrong answer The first number wasn't 1