Submission #1531198
Source Code Expand
#include <iostream> #include <string> #include <vector> #include <algorithm> #include <cmath> #include <cstdio> #include <functional> #include <numeric> #include <stack> #include <queue> #include <map> #include <set> #include <utility> #include <sstream> #include <complex> #include <fstream> #include <bitset> #include <time.h> #include <tuple> using namespace std; typedef long long ll; typedef pair<ll, ll> P; typedef vector<ll> V; typedef complex<double> Point; #define PI acos(-1.0) #define EPS 1e-10 const ll INF = (1LL << 60) - 1; const ll MOD = 1e9 + 7; #define FOR(i,a,b) for(int i=(a);i<(b);i++) #define rep(i,N) for(int i=0;i<(N);i++) #define ALL(s) (s).begin(),(s).end() #define EQ(a,b) (abs((a)-(b))<EPS) #define EQV(a,b) ( EQ((a).real(), (b).real()) && EQ((a).imag(), (b).imag()) ) #define fi first #define se second #define N_SIZE (1LL << 20) #define NIL -1 #define MAX_N 100100 * 3 int n; int q, k; class DK { public: struct edge { int to; ll cost; }; int prev[100010]; ll d[100010]; vector<edge> G[100010];//各頂点からの辺 void dijkstra(int start) { fill(d, d + 100010, INF); d[start] = 0; fill(prev, prev + 100010, -1); priority_queue<P, vector<P>, greater<P>> que; que.push(P(0, start)); while (!que.empty()) { P p = que.top(); que.pop(); int v = p.second; if (d[v] < p.first)continue; for (int i = 0; i < G[v].size(); i++) { edge e = G[v][i]; if (d[e.to] > d[v] + e.cost) { d[e.to] = d[v] + e.cost; prev[e.to] = v; que.push(P(d[e.to], e.to)); } } } } vector<int> get_path(int goal) { vector<int> path; for (int t = goal; t != -1; t = prev[t]) { path.push_back(t); }//このままでは逆順なのでひっくり返す reverse(ALL(path)); return path; } }; DK dk; int main() { cin >> n; rep(i, n - 1) { int a, b, c; cin >> a >> b >> c; dk.G[a].push_back({ b,c }); dk.G[b].push_back({ a,c }); } cin >> q >> k; dk.dijkstra(k); rep(i, q) { int x, y; cin >> x >> y; cout << dk.d[x] + dk.d[y] << endl; } }
Submission Info
Submission Time | |
---|---|
Task | D - Transit Tree Path |
User | jimmy |
Language | C++14 (GCC 5.4.1) |
Score | 400 |
Code Size | 2154 Byte |
Status | AC |
Exec Time | 345 ms |
Memory | 11504 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 400 / 400 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01.txt, sample_02.txt, sample_03.txt |
All | sample_01.txt, sample_02.txt, sample_03.txt, subtask_1_1.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_16.txt, subtask_1_17.txt, subtask_1_18.txt, subtask_1_19.txt, subtask_1_2.txt, subtask_1_20.txt, subtask_1_21.txt, subtask_1_22.txt, subtask_1_23.txt, subtask_1_24.txt, subtask_1_25.txt, subtask_1_26.txt, subtask_1_27.txt, subtask_1_28.txt, subtask_1_3.txt, subtask_1_4.txt, subtask_1_5.txt, subtask_1_6.txt, subtask_1_7.txt, subtask_1_8.txt, subtask_1_9.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_01.txt | AC | 3 ms | 3712 KB |
sample_02.txt | AC | 3 ms | 3712 KB |
sample_03.txt | AC | 3 ms | 3712 KB |
subtask_1_1.txt | AC | 3 ms | 3712 KB |
subtask_1_10.txt | AC | 130 ms | 4480 KB |
subtask_1_11.txt | AC | 4 ms | 3712 KB |
subtask_1_12.txt | AC | 14 ms | 3840 KB |
subtask_1_13.txt | AC | 44 ms | 3968 KB |
subtask_1_14.txt | AC | 3 ms | 3712 KB |
subtask_1_15.txt | AC | 9 ms | 4096 KB |
subtask_1_16.txt | AC | 345 ms | 10368 KB |
subtask_1_17.txt | AC | 341 ms | 10368 KB |
subtask_1_18.txt | AC | 340 ms | 10368 KB |
subtask_1_19.txt | AC | 345 ms | 10368 KB |
subtask_1_2.txt | AC | 4 ms | 3840 KB |
subtask_1_20.txt | AC | 325 ms | 9856 KB |
subtask_1_21.txt | AC | 331 ms | 9856 KB |
subtask_1_22.txt | AC | 329 ms | 9856 KB |
subtask_1_23.txt | AC | 329 ms | 9856 KB |
subtask_1_24.txt | AC | 330 ms | 11504 KB |
subtask_1_25.txt | AC | 325 ms | 11504 KB |
subtask_1_26.txt | AC | 331 ms | 11504 KB |
subtask_1_27.txt | AC | 325 ms | 11504 KB |
subtask_1_28.txt | AC | 305 ms | 9984 KB |
subtask_1_3.txt | AC | 204 ms | 8448 KB |
subtask_1_4.txt | AC | 3 ms | 3712 KB |
subtask_1_5.txt | AC | 180 ms | 4864 KB |
subtask_1_6.txt | AC | 34 ms | 4480 KB |
subtask_1_7.txt | AC | 151 ms | 4608 KB |
subtask_1_8.txt | AC | 3 ms | 3712 KB |
subtask_1_9.txt | AC | 170 ms | 9216 KB |