제출 #912904

#제출 시각아이디문제언어결과실행 시간메모리
9129041075508020060209tc어르신 집배원 (BOI14_postmen)C++14
55 / 100
521 ms73248 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]; //vector<int>ans; 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; } vector<vector<int>>fans; 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]); if(stk[ssz-1]==v){printf("\n");break;} visv[stk[ssz-1]]=0; //stk.pop(); ssz--; } // fans.push_back(vc); }else{ visv[v]=1; stk[ssz++]=v; } }return 0; for(int i=0;i<fans.size();i++){ for(int j=0;j<fans[i].size();j++){ cout<<fans[i][j]<<" "; }cout<<"\n"; } }

컴파일 시 표준 에러 (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]++){
      |      ~~~~~~~^~~~~~~~~~~~~
postmen.cpp: In function 'int main()':
postmen.cpp:64:14: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::vector<int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   64 | for(int i=0;i<fans.size();i++){
      |             ~^~~~~~~~~~~~
postmen.cpp:65:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   65 |     for(int j=0;j<fans[i].size();j++){
      |                 ~^~~~~~~~~~~~~~~
postmen.cpp:37:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   37 |     scanf("%d",&ar[i]);
      |     ~~~~~^~~~~~~~~~~~~
postmen.cpp:38:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   38 |     scanf("%d",&br[i]);
      |     ~~~~~^~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...