제출 #413107

#제출 시각아이디문제언어결과실행 시간메모리
413107BJoozz기지국 (IOI20_stations)C++14
5 / 100
1077 ms700 KiB
#include "stations.h" #define X first #define Y second #define pb push_back #include<bits/stdc++.h> using namespace std; const int MAX=1000+4,M2=5e5+3; void maxx(int &a,int b){if(b>a) a=b;} void minn(int &a,int b){if(b<a) a=b;} template <class X, class Y> bool cmin(X &a, const Y &b) { return a > b ? a = b, 1 : 0; } bool cmax(int &a,int b){ if(b>a){a=b;return 1;} else return 0; } typedef pair < int, int > ii; vector < int > pr[MAX]; int in[MAX]; int tim=0; void dfs(int v,int vpa,bool h){ if(!h) in[v]=tim++; for(int u:pr[v])if(u!=vpa) dfs(u,v,!h); if(h) in[v]=tim++; } std::vector<int> label(int n, int k, std::vector<int> u, std::vector<int> v) { std::vector<int> labels(n); for(int i=0;i<n;i++) pr[i].clear(); tim=0; for (int i = 0; i < n-1; i++){ pr[u[i]].pb(v[i]); pr[v[i]].pb(u[i]); } dfs(0,0,0); for (int i = 0; i < n; i++) { labels[i] = in[i]; } return labels; } int find_next_station(int s, int t, std::vector<int> c) { //cout<<s<<' '<<t<<'\n'; //for(int u:c) cout<<u<<'\n'; if(s<c[0]){ if(t<s) return c.back(); int b=0,e=int(c.size())-2,an=c.back(); while(b<=e){ int m=b+e>>1; if(t<=c[m]){ an=c[m]; b=m+1; } else e=m-1; } return an; } else{ if(t>s) return c[0]; int b=1,e=int(c.size())-1,an=c[0]; while(b<=e){ int m=b+e>>1; if(t>=c[m]){ an=c[m];b=m+1; } else e=m-1; } //cout<<"sp "<<an<<'\n'; return an; } }

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

stations.cpp: In function 'int find_next_station(int, int, std::vector<int>)':
stations.cpp:52:20: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
   52 |             int m=b+e>>1;
      |                   ~^~
stations.cpp:65:20: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
   65 |             int m=b+e>>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...