답안 #912929

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
912929 2024-01-20T04:32:56 Z 1075508020060209tc 어르신 집배원 (BOI14_postmen) C++17
55 / 100
500 ms 65480 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 14684 KB Output is correct
2 Correct 5 ms 14848 KB Output is correct
3 Correct 6 ms 14684 KB Output is correct
4 Correct 8 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 29 ms 23388 KB Output is correct
10 Correct 6 ms 14940 KB Output is correct
11 Correct 6 ms 14940 KB Output is correct
12 Correct 31 ms 23752 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 6 ms 14684 KB Output is correct
2 Correct 6 ms 14684 KB Output is correct
3 Correct 5 ms 14684 KB Output is correct
4 Correct 6 ms 14940 KB Output is correct
5 Correct 7 ms 14684 KB Output is correct
6 Correct 6 ms 14940 KB Output is correct
7 Correct 11 ms 15708 KB Output is correct
8 Correct 6 ms 14936 KB Output is correct
9 Correct 34 ms 23388 KB Output is correct
10 Correct 8 ms 14832 KB Output is correct
11 Correct 8 ms 14940 KB Output is correct
12 Correct 47 ms 23592 KB Output is correct
13 Correct 62 ms 26448 KB Output is correct
14 Correct 60 ms 23188 KB Output is correct
15 Correct 44 ms 25084 KB Output is correct
16 Correct 102 ms 26668 KB Output is correct
17 Correct 43 ms 21076 KB Output is correct
18 Correct 49 ms 24328 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 6 ms 14680 KB Output is correct
2 Correct 7 ms 14680 KB Output is correct
3 Correct 6 ms 14680 KB Output is correct
4 Correct 7 ms 14936 KB Output is correct
5 Correct 7 ms 15192 KB Output is correct
6 Correct 7 ms 14940 KB Output is correct
7 Correct 8 ms 15708 KB Output is correct
8 Correct 5 ms 14936 KB Output is correct
9 Correct 35 ms 23380 KB Output is correct
10 Correct 6 ms 15192 KB Output is correct
11 Correct 6 ms 15048 KB Output is correct
12 Correct 37 ms 23684 KB Output is correct
13 Correct 47 ms 26632 KB Output is correct
14 Correct 84 ms 23032 KB Output is correct
15 Correct 39 ms 25044 KB Output is correct
16 Correct 54 ms 26452 KB Output is correct
17 Correct 62 ms 20916 KB Output is correct
18 Correct 57 ms 24232 KB Output is correct
19 Correct 401 ms 65480 KB Output is correct
20 Correct 311 ms 48464 KB Output is correct
21 Execution timed out 511 ms 58536 KB Time limit exceeded
22 Halted 0 ms 0 KB -