Submission #845099

#TimeUsernameProblemLanguageResultExecution timeMemory
845099vjudge1Birmingham (COCI20_birmingham)C++17
0 / 70
73 ms11564 KiB
#pragma GCC optimize("unroll-loops,Ofast,O3") #include <bits/stdc++.h> #define pb push_back #define mp make_pair #define spc << " " << #define all(x) x.begin(), x.end() #define ll long long #define int long long #define ii pair<int,int> #define vi vector<int> #define vii vector<ii> #define st first #define nd second #define inf 1000000009 #define MOD 1000000007 using namespace std; void solve(){ int n,m,q,k; cin >> n >> m >> q >> k; vi edges[n+1]; int dist[n+1], vis[n+1]; for(int i=1; i<=n; i++){ dist[i]=-1; vis[i]=0; } queue<int> que; for(int i=1; i<=q; i++){ int a; cin >> a; que.push(a); dist[a]=0; } for(int i=1; i<=m; i++){ int a,b; cin >> a >> b; edges[a].pb(b); edges[b].pb(a); } while(que.size()>0){ int f=que.front(); que.pop(); vis[f]=1; for(auto nex:edges[f]){ if(vis[nex]) continue; vis[nex]=1; //cerr << f spc nex << endl; que.push(nex); dist[nex]=dist[f]+1; } } for(int i=1; i<=n; i++){ int ans=0; int cur=1; //cerr << dist[i] << endl; while(dist[i]>=(cur*k)){ dist[i]-=(cur*k); ans++; cur++; } if(dist[i]!=0) ans++; cout << ans << " "; } } signed main(){ ios_base::sync_with_stdio(false);cin.tie(0); #ifdef Local freopen("in.txt","r",stdin); freopen("out","w",stdout); #endif ll t=1; //cin >> t; while(t--) solve(); }
#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...