Submission #90326

#TimeUsernameProblemLanguageResultExecution timeMemory
90326Atashka01Evacuation plan (IZhO18_plan)C++11
0 / 100
4093 ms19320 KiB
//Euzibillahiminesseytanirracim Bismillahirrahmanirrahim /* ID: TASK: LANG: C++ */ #include <bits/stdc++.h> #define pb push_back #define ll long long #define ff first #define ss second #define mp make_pair #define PII pair<int,int> #define inf 100000000001 using namespace std; ll n, m, x, y, z, k, mx, t, d[100001], kd[100001], a[100001], p; vector<pair<ll,ll>> v[100001]; priority_queue<pair<ll,ll>> q; queue<ll>qq; void dfs(int h, int md, int f){ if(h == f){ p = 1; kd[h] = 0; return; } for(auto s:v[h]){ if(kd[s.ff] == 1 || d[s.ff] < md) continue; kd[s.ff] = 1; dfs(s.ff , md , f); if(p == 1){ kd[h] = 0; return; } } kd[h] = 0; } int main() { cin>>n>>m; for(int i=1;i<=m;i++){ cin>>x>>y>>z; v[x].pb({y,z}); v[y].pb({x,z}); } for(int i=1;i<=n;i++) d[i] = inf; cin>>k; for(int i=1;i<=k;i++){ cin>>a[i]; d[a[i]] = 0; q.push({0,a[i]}); } while(!q.empty()){ ll b = q.top().ss; q.pop(); if(kd[b] == 1) continue; kd[b] = 1; for(auto s:v[b]){ if(d[s.ff] > d[b] + s.ss){ d[s.ff] = d[b] + s.ss; q.push({-s.ss , s.ff}); } } } for(int i=1;i<=n;i++) kd[i] = 0; cin>>t; while(t--){ ll l, r; cin>>x>>y; kd[x] = 1; l = 1; r = d[x]; while(l <= r){ int mid = (l + r) / 2; p = 0; dfs(x , mid , y); if(p == 1) l = mid + 1; else r = mid - 1; } kd[x] = 0; cout<<l - 1<<"\n"; } } /* _________oBBBBB8o oBBBBBBB8 _____o8BBBBBBBBBBB BBBBBBBBB8 o88o ___o8BBBBBB**8BBBB BBBBBBBBBB oBBBBBBBo __oBBBBBBB* *** BBBBBBBBBB BBBBBBBBBBo _8BBBBBBBBBBooooo *BBBBBBB8 *BB* 8BBBBBBo _8BBBBBBBBBBBBBBBB8ooBBBBBBB8 8BBBBBBB8 __*BBBBBBBBBBBBBBBBBBBBBBBBBB8 o88BB88BBBBBBBBBBBB ____*BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB8 ______**8BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB* ___________*BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB8* ____________*BBBBBBBBBBBBBBBBBBBBBBBB8888** _____________BBBBBBBBBBBBBBBBBBBBBBB* _____________*BBBBBBBBBBBBBBBBBBBBB* ______________*BBBBBBBBBBBBBBBBBB8 _______________*BBBBBBBBBBBBBBBB* ________________8BBBBBBBBBBBBBBB8 _________________8BBBBBBBBBBBBBBBo __________________BBBBBBBBBBBBBBB8 __________________BBBBBBBBBBBBBBBB __________________8BBBBBBBBBBBBBBB8 __________________*BBBBBBBBBBBBBBBB __________________8BBBBBBBBBBBBBBBB8 _________________oBBBBBBBBBBBBBBBBBB ________________oBBBBBBBBBBBBBBBBBBB ________________BBBBBBBBBBBBBBBBBBBB _______________8BBBBBBBBBBBBBBBBBBB8 ______________oBBBBBBBBB88BBBBBBBBB8 ______________8BBBBBBBBB*8BBBBBBBBB* ______________BBBBBBBBB* BBBBBBBBB8 ______________BBBBBBBB8 oBBBBBBBBB* ______________8BBBBBBB oBBBBBBBB* ______________BBBBBBB* 8BBBBBBB* _____________8BBBBBB* BBBBBBB* ____________8BBBBBB8 oBBBBBB8 ___________8BBBBBB8 8BBBBBB* __________oBBBBBB8 BBBBBBB8 __________BBBBBBB8 BBBBBBBB* _________oBBBBBBB8 BBBBBBBB _________8BBBBBB8 BBBBBBB* _________BBBBBB* 8BBBBB* ________oBBBB8 BBBBB* ________oBBB8 BBBB* ________BBBB8 8BBBBo _______8BBBB* oBBBBBBo ______8BBBB* *BBBBBBBB8o ______BBBBB* *88BBBo */
#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...