QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#592812#4996. Icy Itineraryship2077Compile Error//C++231.4kb2024-09-27 08:19:392024-09-27 08:19:40

Judging History

你现在查看的是最新测评结果

  • [2024-09-27 08:19:40]
  • 评测
  • [2024-09-27 08:19:39]
  • 提交

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={2};
    for (int i=3;i<=n;i++){
        int p=check(1,ans1[0]);
        if (p==check(ans1.back(),i)){
            ans1.emplace_back(i);
            if (!ans2.empty()&&p==check(i,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()&&p!=check(ans1.back(),ans2.back()))
                ans2.emplace_back(ans1.back()),ans1.pop_back();
            if (ans1.empty()&&check(1,ans2.back())!=p){
                reverse(ans2.begin(),ans2.end()),swap(ans1,ans2);
            else ans1.emplace_back(ans2.back()),ans2.pop_back();
        }
    }
    printf("1 ");
    for (auto x:ans1) printf("%d ",x);
    reverse(ans2.begin(),ans2.end());
    for (auto x:ans2) printf("%d ",x);
    return 0;
}

Details

answer.code: In function ‘int main()’:
answer.code:36:13: error: expected ‘}’ before ‘else’
   36 |             else ans1.emplace_back(ans2.back()),ans2.pop_back();
      |             ^~~~
answer.code:34:55: note: to match this ‘{’
   34 |             if (ans1.empty()&&check(1,ans2.back())!=p){
      |                                                       ^