| 提出番号 | 2038 |
|---|---|
| 提出者 | _ei1333 |
| 言語 | C++ |
| 提出日時 | 2018-08-04 15:02:02 |
| 問題名 | (73)観光計画 |
| 結果 | WA |
| 点数 | 0% |
| テストケース | 結果 | 得点 | 実行時間 | メモリ使用量 |
|---|---|---|---|---|
| 1 | AC | 100% | 129ms | 36752KB |
| 2 | AC | 100% | 149ms | 40240KB |
| 3 | AC | 100% | 50ms | 26000KB |
| 4 | AC | 100% | 217ms | 50272KB |
| 5 | AC | 100% | 132ms | 34928KB |
| 6 | AC | 100% | 187ms | 46448KB |
| 7 | AC | 100% | 146ms | 45168KB |
| 8 | AC | 100% | 167ms | 43840KB |
| 9 | AC | 100% | 207ms | 33568KB |
| 10 | AC | 100% | 234ms | 51552KB |
| 11 | AC | 100% | 110ms | 34400KB |
| 12 | AC | 100% | 29ms | 21488KB |
| 13 | AC | 100% | 86ms | 30304KB |
| 14 | AC | 100% | 234ms | 52880KB |
| 15 | AC | 100% | 144ms | 39024KB |
| 16 | AC | 100% | 190ms | 46368KB |
| 17 | AC | 100% | 191ms | 44048KB |
| 18 | AC | 100% | 143ms | 39024KB |
| 19 | AC | 100% | 31ms | 19280KB |
| 20 | AC | 100% | 90ms | 31408KB |
| 21 | AC | 100% | 118ms | 29712KB |
| 22 | AC | 100% | 88ms | 30720KB |
| 23 | AC | 100% | 77ms | 32368KB |
| 24 | AC | 100% | 255ms | 58624KB |
| 25 | AC | 100% | 153ms | 44224KB |
| 26 | AC | 100% | 189ms | 52512KB |
| 27 | AC | 100% | 50ms | 23600KB |
| 28 | WA | 0% | 51ms | 25072KB |
| 29 | AC | 100% | 144ms | 39760KB |
| 30 | WA | 0% | 73ms | 29312KB |
| 31 | AC | 100% | 257ms | 55072KB |
| 32 | AC | 100% | 174ms | 43200KB |
| 33 | AC | 100% | 29ms | 18848KB |
| 34 | AC | 100% | 186ms | 51904KB |
| 35 | AC | 100% | 28ms | 19744KB |
| 36 | AC | 100% | 130ms | 45536KB |
| 37 | AC | 100% | 87ms | 30192KB |
| 38 | AC | 100% | 23ms | 18544KB |
| 39 | AC | 100% | 198ms | 57456KB |
| 40 | AC | 100% | 31ms | 21056KB |
| 41 | AC | 100% | 205ms | 55184KB |
| 42 | AC | 100% | 59ms | 24592KB |
| 43 | AC | 100% | 248ms | 57776KB |
| 44 | AC | 100% | 134ms | 39440KB |
| 45 | AC | 100% | 151ms | 39584KB |
| 46 | AC | 100% | 178ms | 44752KB |
| 47 | AC | 100% | 235ms | 57296KB |
| 48 | AC | 100% | 247ms | 57168KB |
| 49 | AC | 100% | 152ms | 41600KB |
| 50 | AC | 100% | 169ms | 46368KB |
| 51 | AC | 100% | 53ms | 24544KB |
| 52 | AC | 100% | 120ms | 37184KB |
| 53 | AC | 100% | 68ms | 25552KB |
| 54 | AC | 100% | 234ms | 48448KB |
| 55 | AC | 100% | 40ms | 22128KB |
| 56 | AC | 100% | 116ms | 36816KB |
| 57 | AC | 100% | 64ms | 26048KB |
| 58 | AC | 100% | 88ms | 28688KB |
| 59 | AC | 100% | 46ms | 20784KB |
| 60 | AC | 100% | 56ms | 25776KB |
| 61 | AC | 100% | 90ms | 29888KB |
| 62 | AC | 100% | 197ms | 50224KB |
| 63 | WA | 0% | 149ms | 41600KB |
| 64 | AC | 100% | 178ms | 49248KB |
| 65 | AC | 100% | 196ms | 47424KB |
| 66 | AC | 100% | 6ms | 15664KB |
| 67 | WA | 0% | 88ms | 31408KB |
| 68 | WA | 0% | 105ms | 35184KB |
| 69 | AC | 100% | 286ms | 61520KB |
| 70 | AC | 100% | 157ms | 42496KB |
#include <bits/stdc++.h>
#define rep(i, a, n) for(int i = a; i < n; i++)
#define int long long
#define chmin(a, b) a = min(a, b)
using namespace std;
typedef pair<int, int> P;
const int INF = 1e15;
struct edge{
int to, cost;
};
int n, m, k;
vector<edge> G[100010];
int d[100010];
void dfs(int v, int p, int now){
if(d[v] > now) return;
d[v] = now;
rep(i, 0, G[v].size()){
int nxtv = G[v][i].to;
int nxtn = now - G[v][i].cost;
if(nxtv == p || nxtn < 0) continue;
dfs(nxtv, v, nxtn);
}
}
signed main(){
cin >> n >> m >> k;
rep(i, 0, m){
int a, b, c;
cin >> a >> b >> c;
a--; b--;
G[a].push_back({b, c});
G[b].push_back({a, c});
}
vector<P> h(k);
rep(i, 0, k){
cin >> h[i].second >> h[i].first;
h[i].second--;
}
sort(h.rbegin(), h.rend());
rep(i, 0, k){
dfs(h[i].second, -1, h[i].first);
}
int ans = 0;
rep(i, 0, n) if(d[i] > 0) ans++;
cout << ans << endl;
}