| 提出番号 | 1776 |
|---|---|
| 提出者 | dohatsutsu |
| 言語 | C++ |
| 提出日時 | 2018-08-04 13:50:15 |
| 問題名 | (73)観光計画 |
| 結果 | WA |
| 点数 | 0% |
| テストケース | 結果 | 得点 | 実行時間 | メモリ使用量 |
|---|---|---|---|---|
| 1 | WA | 0% | 120ms | 41968KB |
| 2 | WA | 0% | 144ms | 45232KB |
| 3 | WA | 0% | 67ms | 27760KB |
| 4 | AC | 100% | 185ms | 55184KB |
| 5 | AC | 100% | 90ms | 37568KB |
| 6 | AC | 100% | 234ms | 51712KB |
| 7 | WA | 0% | 156ms | 53728KB |
| 8 | WA | 0% | 185ms | 53216KB |
| 9 | AC | 100% | 92ms | 34400KB |
| 10 | WA | 0% | 229ms | 67472KB |
| 11 | WA | 0% | 102ms | 36848KB |
| 12 | WA | 0% | 35ms | 22368KB |
| 13 | WA | 0% | 90ms | 34576KB |
| 14 | WA | 0% | 220ms | 58464KB |
| 15 | WA | 0% | 158ms | 48832KB |
| 16 | AC | 100% | 134ms | 49456KB |
| 17 | WA | 0% | 210ms | 60928KB |
| 18 | WA | 0% | 125ms | 46704KB |
| 19 | WA | 0% | 36ms | 27296KB |
| 20 | WA | 0% | 102ms | 35776KB |
| 21 | AC | 100% | 58ms | 30272KB |
| 22 | WA | 0% | 90ms | 33776KB |
| 23 | WA | 0% | 97ms | 34832KB |
| 24 | WA | 0% | 230ms | 69168KB |
| 25 | WA | 0% | 185ms | 60240KB |
| 26 | WA | 0% | 224ms | 61040KB |
| 27 | WA | 0% | 56ms | 25920KB |
| 28 | WA | 0% | 53ms | 26480KB |
| 29 | WA | 0% | 123ms | 44688KB |
| 30 | WA | 0% | 152ms | 38944KB |
| 31 | WA | 0% | 251ms | 67152KB |
| 32 | AC | 100% | 146ms | 46400KB |
| 33 | WA | 0% | 31ms | 21072KB |
| 34 | WA | 0% | 202ms | 56928KB |
| 35 | WA | 0% | 36ms | 21200KB |
| 36 | WA | 0% | 168ms | 50112KB |
| 37 | WA | 0% | 82ms | 33520KB |
| 38 | WA | 0% | 20ms | 19216KB |
| 39 | WA | 0% | 267ms | 62816KB |
| 40 | WA | 0% | 35ms | 21200KB |
| 41 | WA | 0% | 218ms | 61040KB |
| 42 | WA | 0% | 61ms | 28464KB |
| 43 | WA | 0% | 246ms | 69504KB |
| 44 | WA | 0% | 141ms | 44064KB |
| 45 | WA | 0% | 158ms | 48944KB |
| 46 | WA | 0% | 163ms | 49776KB |
| 47 | WA | 0% | 233ms | 61408KB |
| 48 | WA | 0% | 212ms | 63024KB |
| 49 | AC | 100% | 110ms | 43856KB |
| 50 | WA | 0% | 175ms | 52016KB |
| 51 | WA | 0% | 43ms | 25552KB |
| 52 | WA | 0% | 120ms | 39472KB |
| 53 | WA | 0% | 71ms | 30368KB |
| 54 | AC | 100% | 169ms | 50976KB |
| 55 | WA | 0% | 45ms | 24048KB |
| 56 | WA | 0% | 141ms | 39984KB |
| 57 | WA | 0% | 70ms | 34512KB |
| 58 | WA | 0% | 90ms | 36608KB |
| 59 | WA | 0% | 51ms | 30352KB |
| 60 | WA | 0% | 68ms | 27536KB |
| 61 | WA | 0% | 95ms | 33776KB |
| 62 | AC | 100% | 181ms | 55696KB |
| 63 | WA | 0% | 166ms | 47424KB |
| 64 | WA | 0% | 199ms | 58720KB |
| 65 | WA | 0% | 313ms | 53056KB |
| 66 | WA | 0% | 6ms | 15920KB |
| 67 | WA | 0% | 179ms | 40992KB |
| 68 | WA | 0% | 111ms | 39088KB |
| 69 | WA | 0% | 279ms | 77920KB |
| 70 | WA | 0% | 152ms | 46496KB |
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
struct edge{
ll to,cost;
edge(ll to,ll cost) : to(to), cost(cost) {}
};
ll N,M,K;
vector< ll > d,h;
vector< edge > G[100005];
int main(){
cin>>N>>M>>K;
for(int i=0;i<M;i++){
ll a,b,c;
cin>>a>>b>>c;
a--,b--;
G[a].push_back( edge(b,c) );
G[b].push_back( edge(a,b) );
}
h.resize(K);
d.resize(K);
const ll tmp = (1LL<<30);
for(int i=0;i<K;i++){
cin>>h[i]>>d[i];
h[i]--;
G[ N ].push_back( (edge){ h[i], tmp - d[i] } );
}
vector<ll> dist( N+1 , (1LL<<60) );
dist[ N ] = 0;
typedef pair<ll,ll> P;
priority_queue< P , vector<P> , greater<P> > Q;
Q.push( P(0,N) );
while(!Q.empty()){
P p=Q.top();
Q.pop();
ll pos=p.second;
ll cost=p.first;
if( dist[pos] < cost )continue;
for(int i=0;i<(int)G[pos].size();i++){
edge e=G[pos][i];
if( cost + e.cost < dist[ e.to ] ){
dist[ e.to ] = cost + e.cost;
Q.push( P( dist[e.to] , e.to ) );
}
}
}
ll ans=0;
for(int i=0;i<N;i++)
if( dist[i] <= tmp )ans++;
cout<<ans<<endl;
return 0;
}