Submission #341531

#TimeUsernameProblemLanguageResultExecution timeMemory
341531A_DBirmingham (COCI20_birmingham)C++14
70 / 70
225 ms16876 KiB
/* ID: antwand1 TASK: pprime LANG: C++ */ #include <bits/stdc++.h> #define ll long long #define int long long #define du long double #define F first #define S second #define FOR(a,b) for(int a=1;a<=b;a++) #define FORl(a,b) for(a=1;a<=b;a++) #define FOR0(a,b) for(int a=1;a<b;a++) #define FORl0(a,b) for(a=0;a<b;a++) #define ii pair<int,int> using namespace std; const int N=2e5+1; int vis[N]; int mp[N]; vector<int> vec; vector<int> g[N]; deque<int> deq; main() { int n,m,q,k; cin>>n>>m>>q>>k; int sum=0,idx=k; for(idx=k;sum<=2e5;idx+=k){ sum=sum+idx; if(sum>2e5)break; vec.push_back(sum); } idx=1; int j=0; while(j<vec.size()){ while(idx<=vec[j]){ mp[idx]=j+1; idx++; } j++; } for(int i=1;i<=n;i++)vis[i]=1e18; while(q--){ int a; cin>>a; vis[a]=0; deq.push_back(a); } while(m--){ int a,b; cin>>a>>b; g[a].push_back(b); g[b].push_back(a); } while(deq.empty()==0){ int v=deq[0]; deq.pop_front(); for(auto x:g[v]){ if(vis[x]>vis[v]+1){ vis[x]=vis[v]+1; deq.push_back(x); } } } for(int i=1;i<=n;i++){ cout<<mp[vis[i]]<<" "; } cout<<endl; }

Compilation message (stderr)

birmingham.cpp:24:6: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   24 | main()
      |      ^
birmingham.cpp: In function 'int main()':
birmingham.cpp:36:12: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   36 |     while(j<vec.size()){
      |           ~^~~~~~~~~~~
#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...
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...