Submission #1162532

#TimeUsernameProblemLanguageResultExecution timeMemory
1162532NewtonabcBirmingham (COCI20_birmingham)C++17
0 / 70
82 ms19520 KiB
#include<bits/stdc++.h> #define int long long using namespace std; const int N=4e5+10; int d[N],tb[N]; bool vs[N]; vector<int> adj[N]; queue<int> q; signed main(){ int n,m,qq,k,mx; cin>>n >>m >>qq >>k; tb[0]=0; for(int i=1;i<=3e5;i++){ tb[i]=tb[i-1]+(k*i); mx=max(i,mx); } for(int i=0;i<qq;i++){ int inp; cin>>inp; vs[inp]=true; q.push(inp); } for(int i=0;i<m;i++){ int u,v; cin>>u >>v; adj[u].push_back(v); adj[v].push_back(u); } while(!q.empty()){ int u=q.front(); q.pop(); for(auto v:adj[u]){ if(vs[v]) continue; vs[v]=true; q.push(v); d[v]=d[u]+1; } } for(int i=1;i<=n;i++){ int ind=lower_bound(tb,tb+mx,d[i])-tb; cout<<ind <<" "; } }
#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...