Submission #334918

#TimeUsernameProblemLanguageResultExecution timeMemory
334918inwbearStations (IOI20_stations)C++14
0 / 100
894 ms1180 KiB
#include "stations.h" #include<bits/stdc++.h> using namespace std; #define pb push_back #define all(x) (x).begin(),(x).end() #define MEM(x,a) memset((x),a,sizeof((x))) #define F first #define S second #define imx INT_MAX const long long MOD = (long long)(1e9+7); const long long MMX = (long long)(1e18); typedef long long LL; typedef pair<int,int> pii; int nn,co[1005]; bitset<1005>go; vector<int>v[1005]; void dfs(int N) { go[N]=true; co[N]=nn*1000; for(int i=0;i<v[N].size();i++) { if(!go[v[N][i]]) { dfs(v[N][i]); } } co[N]+=nn; nn++; return; } vector<int>label(int n,int k,vector<int>a,vector<int>b) { vector<int>labels(n); nn=0; for(int i=0;i<1005;i++)v[i].clear(),go[i]=false; for(int i=0;i<a.size();i++) { v[a[i]].pb(b[i]); v[b[i]].pb(a[i]); } dfs(0); for(int i=0;i<n;i++)labels[i]=co[i]; return labels; } int find_next_station(int s,int t,vector<int>c) { int ss=s/1000,se=s%1000,ts=t/1000,te=t%1000,re,cs,ce; if(ts<=ss&&te>=se) { for(int i=0;i<c.size();i++) { cs=c[i]/1000; ce=c[i]%1000; if(cs<=ss&&ce>=se)re=c[i]; } } else { for(int i=0;i<c.size();i++) { cs=c[i]/1000; ce=c[i]%1000; if(ss<=cs&&se>=ce) { if(cs<=ts&&ce>=te)re=c[i]; } } } return re; }

Compilation message (stderr)

stations.cpp: In function 'void dfs(int)':
stations.cpp:21:15: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   21 |  for(int i=0;i<v[N].size();i++)
      |              ~^~~~~~~~~~~~
stations.cpp: In function 'std::vector<int> label(int, int, std::vector<int>, std::vector<int>)':
stations.cpp:37:15: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   37 |  for(int i=0;i<a.size();i++)
      |              ~^~~~~~~~~
stations.cpp: In function 'int find_next_station(int, int, std::vector<int>)':
stations.cpp:52:16: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   52 |   for(int i=0;i<c.size();i++)
      |               ~^~~~~~~~~
stations.cpp:61:16: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   61 |   for(int i=0;i<c.size();i++)
      |               ~^~~~~~~~~
stations.cpp:71:9: warning: 're' may be used uninitialized in this function [-Wmaybe-uninitialized]
   71 |  return re;
      |         ^~
#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...