# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
750969 | dsyz | Voting Cities (NOI22_votingcity) | C++17 | 77 ms | 8252 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
#define MAXN (5005)
int main() {
ios_base::sync_with_stdio(false);cin.tie(0);
ll N,E,K;
cin>>N>>E>>K;
vector<pair<ll,ll> > v[N];
ll votingcities[K];
for(ll i = 0;i < K;i++){
cin>>votingcities[i];
}
for(ll i = 0;i < E;i++){
ll a,b,c;
cin>>a>>b>>c;
v[b].push_back({a,c});
//reverse the edges as we start from votingcities
}
priority_queue<pair<ll,pair<ll,ll> >,vector<pair<ll,pair<ll,ll> > >,greater<pair<ll,pair<ll,ll> > > > pq;
ll dist[N][32]; //(1<<5) = 32 (11111 is 31 so 31 is max index)
memset(dist,-1,sizeof(dist));
for(ll k = 0;k < K;k++){
ll x = votingcities[k];
for(ll j = 0;j < 32;j++){
dist[x][j] = 0;
pq.push({dist[x][j],{x,j}});
}
}
while(!pq.empty()){
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |