제출 #912928

#제출 시각아이디문제언어결과실행 시간메모리
9129281075508020060209tc어르신 집배원 (BOI14_postmen)C++14
55 / 100
517 ms65456 KiB
#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; }

컴파일 시 표준 에러 (stderr) 메시지

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]++){
      |      ~~~~~~~^~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...