Submission #4060762
Source Code Expand
#include <iostream> #include <algorithm> #include <map> #include <queue> using namespace std; typedef long long ll; vector< pair<int,int> > V; vector< pair< pair<int,int>,int> > E; vector<pair<int,int> > G[500005]; int dist[500005]; map<pair<int,int>,int> mp; int main(){ int N,M; cin>>N>>M; for(int i = 0;i < M;i++){ int p,q,c; cin>>p>>q>>c; E.push_back(make_pair(make_pair(p,q),c)); V.push_back(make_pair(p,c)); V.push_back(make_pair(q,c)); } for(int i = 1;i <= N;i++){V.push_back(make_pair(i,0));} for(int i = 0;i<500005;i++)dist[i]=-1; sort(V.begin(),V.end()); V.resize(unique(V.begin(),V.end()) -V.begin()); int vsize = V.size(); for(int i = 0;i < vsize;i++){ mp[V[i]]=i; } for(int i = 0;i < E.size();i++){ int p,q,c; p=E[i].first.first; q=E[i].first.second; c=E[i].second; G[mp[make_pair(p,c)]].push_back(make_pair(0,mp[make_pair(q,c)])); G[mp[make_pair(q,c)]].push_back(make_pair(0,mp[make_pair(p,c)])); G[mp[make_pair(p,c)]].push_back(make_pair(0,mp[make_pair(p,0)])); G[mp[make_pair(p,0)]].push_back(make_pair(1,mp[make_pair(p,c)])); G[mp[make_pair(q,c)]].push_back(make_pair(0,mp[make_pair(q,0)])); G[mp[make_pair(q,0)]].push_back(make_pair(1,mp[make_pair(q,c)])); } priority_queue<pair<int,int> ,vector<pair<int,int> > ,greater<pair<int,int> > > pq; pq.push(make_pair(0,mp[make_pair(1,0)])); while(!pq.empty()){ pair<int,int> top = pq.top(); pq.pop(); int d = top.first; int v = top.second; //cout<<"a: "<<d<<" "<<V[v].first<<" "<<V[v].second<<" "<<endl; if(dist[v]==-1||dist[v] > d){ dist[v] = d; for(int i = 0; i < G[v].size(); i++){ pq.push(make_pair(G[v][i].first + d, G[v][i].second)); } } } cout<<dist[mp[make_pair(N,0)]]<<endl; }
Submission Info
Submission Time | |
---|---|
Task | E - Snuke's Subway Trip |
User | taskooh |
Language | C++14 (GCC 5.4.1) |
Score | 600 |
Code Size | 2022 Byte |
Status | AC |
Exec Time | 1968 ms |
Memory | 73472 KB |
Judge Result
Set Name | Sample | All | ||
---|---|---|---|---|
Score / Max Score | 0 / 0 | 600 / 600 | ||
Status | AC |
|
Set Name | Test Cases |
---|---|
Sample | |
All | 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt, 20.txt, 21.txt, 22.txt, 23.txt, 24.txt, 25.txt, 26.txt, 27.txt, 28.txt, 29.txt, 30.txt, 31.txt, 32.txt, 33.txt, 34.txt, 35.txt, 36.txt, 37.txt, 38.txt, sample_01.txt, sample_02.txt, sample_03.txt, w1.txt, w10.txt, w11.txt, w12.txt, w13.txt, w14.txt, w15.txt, w16.txt, w17.txt, w18.txt, w2.txt, w3.txt, w4.txt, w5.txt, w6.txt, w7.txt, w8.txt, w9.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
01.txt | AC | 7 ms | 13952 KB |
02.txt | AC | 1087 ms | 47232 KB |
03.txt | AC | 1968 ms | 73472 KB |
04.txt | AC | 1707 ms | 69248 KB |
05.txt | AC | 1733 ms | 64512 KB |
06.txt | AC | 693 ms | 44420 KB |
07.txt | AC | 839 ms | 46340 KB |
08.txt | AC | 1848 ms | 72960 KB |
09.txt | AC | 881 ms | 49284 KB |
10.txt | AC | 884 ms | 49284 KB |
11.txt | AC | 1067 ms | 58368 KB |
12.txt | AC | 384 ms | 39808 KB |
13.txt | AC | 759 ms | 45184 KB |
14.txt | AC | 1047 ms | 57344 KB |
15.txt | AC | 976 ms | 53504 KB |
16.txt | AC | 1035 ms | 55424 KB |
17.txt | AC | 1100 ms | 57088 KB |
18.txt | AC | 561 ms | 43008 KB |
19.txt | AC | 1032 ms | 55936 KB |
20.txt | AC | 1129 ms | 60160 KB |
21.txt | AC | 1664 ms | 72064 KB |
22.txt | AC | 1191 ms | 61568 KB |
23.txt | AC | 1456 ms | 62720 KB |
24.txt | AC | 1126 ms | 59776 KB |
25.txt | AC | 389 ms | 38400 KB |
26.txt | AC | 757 ms | 45312 KB |
27.txt | AC | 1135 ms | 60928 KB |
28.txt | AC | 1125 ms | 60032 KB |
29.txt | AC | 1143 ms | 60928 KB |
30.txt | AC | 1099 ms | 58624 KB |
31.txt | AC | 765 ms | 46208 KB |
32.txt | AC | 1052 ms | 56064 KB |
33.txt | AC | 1121 ms | 60672 KB |
34.txt | AC | 974 ms | 52608 KB |
35.txt | AC | 356 ms | 39168 KB |
36.txt | AC | 612 ms | 43648 KB |
37.txt | AC | 1026 ms | 54656 KB |
38.txt | AC | 990 ms | 54144 KB |
sample_01.txt | AC | 7 ms | 13952 KB |
sample_02.txt | AC | 7 ms | 13952 KB |
sample_03.txt | AC | 7 ms | 13952 KB |
w1.txt | AC | 1270 ms | 55552 KB |
w10.txt | AC | 1643 ms | 64128 KB |
w11.txt | AC | 442 ms | 39552 KB |
w12.txt | AC | 714 ms | 42880 KB |
w13.txt | AC | 1168 ms | 44928 KB |
w14.txt | AC | 1574 ms | 61312 KB |
w15.txt | AC | 305 ms | 40320 KB |
w16.txt | AC | 458 ms | 40960 KB |
w17.txt | AC | 643 ms | 41216 KB |
w18.txt | AC | 1007 ms | 41600 KB |
w2.txt | AC | 1077 ms | 58496 KB |
w3.txt | AC | 1474 ms | 61824 KB |
w4.txt | AC | 1198 ms | 57088 KB |
w5.txt | AC | 1866 ms | 72448 KB |
w6.txt | AC | 1543 ms | 63872 KB |
w7.txt | AC | 1648 ms | 62720 KB |
w8.txt | AC | 1697 ms | 61184 KB |
w9.txt | AC | 1683 ms | 61184 KB |