답안 #912928

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
912928 2024-01-20T04:32:27 Z 1075508020060209tc 어르신 집배원 (BOI14_postmen) C++14
55 / 100
500 ms 65456 KB
#pragma GCC optimize("O3")
#include<bits/stdc++.h>
using namespace std;
//#define int long long
#define X first
#define Y second
#define SZ(x) (int)(x).size()

int n;int m;
int ar[500005];
int br[500005];
vector<int>e[500005];
int eit[500005];
bool vis[500005];
bool visv[500005];

int ans[500005];
int asz;
void dfs(int nw){
for(;eit[nw]<e[nw].size();eit[nw]++){
    int id=e[nw][eit[nw]];
    if(vis[id]){continue;}
    vis[id]=1;
    int v=ar[id]^nw;
    dfs(v);
}
ans[asz++]=nw;
}

int stk[510005];
signed main(){
cin.tie(0);
ios_base::sync_with_stdio(0);
cin>>n>>m;
for(int i=1;i<=m;i++){
    cin>>ar[i]>>br[i];
 //   scanf("%d",&ar[i]);
   // scanf("%d",&br[i]);
    e[ar[i]].push_back(i);
    e[br[i]].push_back(i);
    ar[i]^=br[i];
}
dfs(1);
int ssz=0;
//stack<int>stk;
for(int i=0;i<asz;i++){
    //vector<int>vc;
    int v=ans[i];
    if(visv[v]){
        while(1){
  //          vc.push_back(stk.back());
            //printf("%d ",stk[ssz-1]);
            cout<<stk[ssz-1];
            if(stk[ssz-1]==v){cout<<'\n';break;}else{
                cout<<' ';
            }

            visv[stk[ssz-1]]=0;
            //stk.pop();
            ssz--;
        }
//        fans.push_back(vc);
    }else{
        visv[v]=1;
        stk[ssz++]=v;
    }
}return 0;

}

Compilation message

postmen.cpp: In function 'void dfs(int)':
postmen.cpp:20:13: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   20 | for(;eit[nw]<e[nw].size();eit[nw]++){
      |      ~~~~~~~^~~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 5 ms 14680 KB Output is correct
2 Correct 5 ms 14684 KB Output is correct
3 Correct 6 ms 14684 KB Output is correct
4 Correct 6 ms 14940 KB Output is correct
5 Correct 5 ms 14940 KB Output is correct
6 Correct 6 ms 14940 KB Output is correct
7 Correct 10 ms 15708 KB Output is correct
8 Correct 6 ms 14940 KB Output is correct
9 Correct 34 ms 23460 KB Output is correct
10 Correct 6 ms 14936 KB Output is correct
11 Correct 7 ms 14940 KB Output is correct
12 Correct 34 ms 23544 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 5 ms 14680 KB Output is correct
2 Correct 5 ms 14684 KB Output is correct
3 Correct 6 ms 14684 KB Output is correct
4 Correct 7 ms 14936 KB Output is correct
5 Correct 6 ms 14936 KB Output is correct
6 Correct 6 ms 14936 KB Output is correct
7 Correct 9 ms 15704 KB Output is correct
8 Correct 6 ms 14940 KB Output is correct
9 Correct 35 ms 23452 KB Output is correct
10 Correct 6 ms 14940 KB Output is correct
11 Correct 5 ms 14940 KB Output is correct
12 Correct 36 ms 23720 KB Output is correct
13 Correct 87 ms 26532 KB Output is correct
14 Correct 46 ms 23116 KB Output is correct
15 Correct 46 ms 25136 KB Output is correct
16 Correct 42 ms 26452 KB Output is correct
17 Correct 62 ms 21032 KB Output is correct
18 Correct 44 ms 24096 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 5 ms 14684 KB Output is correct
2 Correct 7 ms 14684 KB Output is correct
3 Correct 5 ms 14684 KB Output is correct
4 Correct 7 ms 15096 KB Output is correct
5 Correct 5 ms 14684 KB Output is correct
6 Correct 8 ms 14940 KB Output is correct
7 Correct 9 ms 15708 KB Output is correct
8 Correct 7 ms 15092 KB Output is correct
9 Correct 31 ms 23384 KB Output is correct
10 Correct 6 ms 14936 KB Output is correct
11 Correct 6 ms 14940 KB Output is correct
12 Correct 35 ms 23636 KB Output is correct
13 Correct 51 ms 26552 KB Output is correct
14 Correct 42 ms 23188 KB Output is correct
15 Correct 48 ms 25032 KB Output is correct
16 Correct 63 ms 26444 KB Output is correct
17 Correct 56 ms 21076 KB Output is correct
18 Correct 55 ms 24236 KB Output is correct
19 Execution timed out 517 ms 65456 KB Time limit exceeded
20 Halted 0 ms 0 KB -