Submission #2861172
Source Code Expand
#include <bits/stdc++.h> #define N 100005 using namespace std; typedef pair<int,int> ii; struct data { int dist,u,company; }; map<int,int> d[N]; vector<vector<ii>> AdjList(N); void dijistra() { d[1][0] = 0; deque<data> q; q.push_back(data{0,1,0}); while(!q.empty()) { data f = q.front(); q.pop_front(); int dist = f.dist,u = f.u,c = f.company; if(dist!=d[u][c]) continue; if(!d[u].count(0)||d[u].count(0)&&d[u][0]>dist) { d[u][0] = dist; q.push_front(data{dist,u,0}); } if(c) { int pos = lower_bound(AdjList[u].begin(),AdjList[u].end(),ii(c,0)) - AdjList[u].begin() ; while(pos<AdjList[u].size()&&AdjList[u][pos].first==c) { int v = AdjList[u][pos].second; if(!d[v].count(c)||d[v].count(c)&&d[v][c]>dist) { d[v][c] = dist; q.push_front(data{dist,v,c}); } pos++; } } else { for(auto i:AdjList[u]) { int v = i.second,company = i.first; if(!d[v].count(company)||d[v].count(company)&&d[v][company]>dist+1) { d[v][company] = dist+1; q.push_back(data{dist+1,v,company}); } } } } } signed main() { int n,m; cin>>n>>m; while(m--) { int u,v,c; cin>>u>>v>>c; AdjList[u].push_back(ii(c,v)); AdjList[v].push_back(ii(c,u)); } for(int i=1;i<=n;i++) sort(AdjList[i].begin(),AdjList[i].end()); dijistra(); if(!d[n].count(0)) cout<<-1; else cout<<d[n][0]; }
Submission Info
Submission Time | |
---|---|
Task | E - Snuke's Subway Trip |
User | vjudge5 |
Language | C++14 (GCC 5.4.1) |
Score | 600 |
Code Size | 1820 Byte |
Status | AC |
Exec Time | 495 ms |
Memory | 37376 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 | 5 ms | 7296 KB |
02.txt | AC | 370 ms | 18176 KB |
03.txt | AC | 427 ms | 36992 KB |
04.txt | AC | 209 ms | 13568 KB |
05.txt | AC | 345 ms | 31104 KB |
06.txt | AC | 128 ms | 23808 KB |
07.txt | AC | 156 ms | 24576 KB |
08.txt | AC | 414 ms | 37376 KB |
09.txt | AC | 170 ms | 26368 KB |
10.txt | AC | 167 ms | 26368 KB |
11.txt | AC | 226 ms | 25084 KB |
12.txt | AC | 137 ms | 11256 KB |
13.txt | AC | 183 ms | 16376 KB |
14.txt | AC | 239 ms | 24576 KB |
15.txt | AC | 187 ms | 20604 KB |
16.txt | AC | 210 ms | 23168 KB |
17.txt | AC | 236 ms | 25592 KB |
18.txt | AC | 159 ms | 12924 KB |
19.txt | AC | 199 ms | 22772 KB |
20.txt | AC | 258 ms | 27136 KB |
21.txt | AC | 495 ms | 35452 KB |
22.txt | AC | 288 ms | 27128 KB |
23.txt | AC | 336 ms | 29568 KB |
24.txt | AC | 210 ms | 25724 KB |
25.txt | AC | 149 ms | 11256 KB |
26.txt | AC | 173 ms | 16632 KB |
27.txt | AC | 264 ms | 27264 KB |
28.txt | AC | 235 ms | 25852 KB |
29.txt | AC | 257 ms | 26240 KB |
30.txt | AC | 204 ms | 24696 KB |
31.txt | AC | 176 ms | 16892 KB |
32.txt | AC | 201 ms | 22516 KB |
33.txt | AC | 254 ms | 27136 KB |
34.txt | AC | 201 ms | 21372 KB |
35.txt | AC | 132 ms | 11256 KB |
36.txt | AC | 171 ms | 13304 KB |
37.txt | AC | 215 ms | 22016 KB |
38.txt | AC | 202 ms | 21372 KB |
sample_01.txt | AC | 4 ms | 7296 KB |
sample_02.txt | AC | 4 ms | 7296 KB |
sample_03.txt | AC | 4 ms | 7296 KB |
w1.txt | AC | 224 ms | 22884 KB |
w10.txt | AC | 222 ms | 16768 KB |
w11.txt | AC | 152 ms | 11096 KB |
w12.txt | AC | 171 ms | 11904 KB |
w13.txt | AC | 259 ms | 19584 KB |
w14.txt | AC | 244 ms | 24064 KB |
w15.txt | AC | 130 ms | 11224 KB |
w16.txt | AC | 141 ms | 11264 KB |
w17.txt | AC | 160 ms | 11904 KB |
w18.txt | AC | 196 ms | 16896 KB |
w2.txt | AC | 234 ms | 22876 KB |
w3.txt | AC | 247 ms | 27252 KB |
w4.txt | AC | 217 ms | 22644 KB |
w5.txt | AC | 442 ms | 37364 KB |
w6.txt | AC | 284 ms | 31604 KB |
w7.txt | AC | 395 ms | 30236 KB |
w8.txt | AC | 386 ms | 29696 KB |
w9.txt | AC | 358 ms | 30464 KB |