제출 #429421

#제출 시각아이디문제언어결과실행 시간메모리
429421DanerZein기지국 (IOI20_stations)C++14
0 / 100
3177 ms2097156 KiB
#include "stations.h" #include <bits/stdc++.h> using namespace std; typedef vector<int> vi; vector<vi> G; vector<vi> li; void dfs(int u,int p){ for(auto &v:G[u]){ if(v!=p){ dfs(v,u); for(int i=0;i<li[v].size();i++){ li[u].push_back(li[v][i]); } } } li[u].push_back(u); } int construct(int id){ int s=0; int e=1; for(int i=li[id].size()-1;i>=0;i--){ s+=(li[id][i]*e); e*=10; } return s; } std::vector<int> label(int n, int k, std::vector<int> u, std::vector<int> v) { G.resize(n+1); li.resize(n+1); for(int i=0;i<n-1;i++){ G[u[i]].push_back(v[i]); G[v[i]].push_back(u[i]); } dfs(0,-1); vector<int> lab; for(int i=0;i<n;i++){ lab.push_back(construct(i)); //cout<<lab[i]<<" "; } //cout<<endl; return lab; } int find_next_station(int s, int t, std::vector<int> c) { int pa=-1; int hj=-1; for(auto &v:c){ if(v>s){ pa=v; continue; } int aux=v; int e=10; for(int i=0;i<8;i++){ int a,b; a=aux%e; b=aux/e; e*=10; if(a==t || b==t) hj=v; } } //cout<<s<<" "<<t<<" "<<hj<<" "<<pa<<endl; if(hj==-1) return pa; return hj; }

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

stations.cpp: In function 'void dfs(int, int)':
stations.cpp:12:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   12 |       for(int i=0;i<li[v].size();i++){
      |                   ~^~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...