제출 #320597

#제출 시각아이디문제언어결과실행 시간메모리
320597kshitij_sodani기지국 (IOI20_stations)C++14
0 / 100
919 ms1132 KiB
#include <bits/stdc++.h> using namespace std; typedef long long llo; #define mp make_pair #define pb push_back #define a first #define b second #define endl '\n' #include "stations.h" vector<int> adj[1001]; int co=0; int st[1001]; int endd[1001]; int levv[1001]; int nn; void dfs(int no,int par=-1,int levv=0){ st[no]=co; co++; for(auto j:adj[no]){ if(j!=par){ dfs(j,no,levv+1); } } if(levv%2==1){ st[no]=1000+co-1; } } std::vector<int> label(int n, int k, std::vector<int> u, std::vector<int> v) { nn=n; for(int i=0;i<n;i++){ adj[i].clear(); } co=0; for(int i=0;i<n-1;i++){ adj[u[i]].pb(v[i]); adj[v[i]].pb(u[i]); } dfs(0); vector<int> ans; for(int i=0;i<n;i++){ ans.pb(st[i]); // cout<<st[i]; } //cout<<endl; return ans; } int find_next_station(int s, int t, std::vector<int> c) { if(c.size()==1){ return c[0]; } sort(c.begin(),c.end()); vector<int> cc; for(auto j:c){ if(j>=1000){ cc.pb(j-1000); } else{ cc.pb(j); } } if(s>=1000){ s-=1000; } if(t>=1000){ t-=1000; } if(s<c[0]){ int pre=s-1; for(int i=0;i<c.size()-1;i++){ int la=0; if(i==0){ la=s; } else{ la=cc[i-1]+1; } if(t<=cc[i] and t>=la){ return c[i]; } } return c.back(); } else{ for(int i=c.size()-1;i>0;i--){ int la=0; if(i==cc.size()-1){ la=s; } else{ la=cc[i+1]-1; } if(t<=la and t>=cc[i]){ return c[i]; } } return c.back(); } return c[0]; }

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

stations.cpp: In function 'int find_next_station(int, int, std::vector<int>)':
stations.cpp:83:16: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   83 |   for(int i=0;i<c.size()-1;i++){
      |               ~^~~~~~~~~~~
stations.cpp:81:7: warning: unused variable 'pre' [-Wunused-variable]
   81 |   int pre=s-1;
      |       ^~~
stations.cpp:102:8: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  102 |    if(i==cc.size()-1){
      |       ~^~~~~~~~~~~~~
#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...