# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
330295 | 2020-11-24T14:17:50 Z | BeanZ | Ceste (COCI17_ceste) | C++14 | 823 ms | 25556 KB |
// I_Love_LPL #include <bits/stdc++.h> using namespace std; #define ll long long #define endl '\n' const int N = 2005; const int lg = 18; const int mod = 1e9 + 7; const long long oo = 1e18; const int lim = 1e6; struct viet{ ll u, c, t; }; struct lpl{ ll u, c, t; bool operator <(const lpl &o) const{ return c > o.c; } }; vector<viet> node[N]; ll best[N], dp[N]; int main(){ ios_base::sync_with_stdio(false); cin.tie(0); if (fopen("A.inp", "r")){ freopen("test.inp", "r", stdin); freopen("test.out", "w", stdout); } ll n, m; cin >> n >> m; for (int i = 1; i <= m; i++){ ll u, v, c, t; cin >> u >> v >> c >> t; node[u].push_back({v, c, t}); node[v].push_back({u, c, t}); } for (int i = 1; i <= n; i++){ best[i] = 1e18; dp[i] = 1e18; } best[1] = 0; dp[1] = 0; priority_queue<lpl> pq; pq.push({1, 0, 0}); while (pq.size()){ lpl x = pq.top(); pq.pop(); if (x.t > best[x.u]) continue; best[x.u] = x.t; dp[x.u] = min(dp[x.u], (x.t) * (x.c)); for (auto j : node[x.u]){ //if ((x.t + j.t) < best[j.u]){ pq.push({j.u, x.c + j.c, x.t + j.t}); //} } } for (int i = 2; i <= n; i++){ if (dp[i] >= 1e17) cout << -1 << endl; else cout << dp[i] << endl; } } /* */
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 364 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 492 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 364 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 492 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 748 KB | Output is correct |
2 | Correct | 3 ms | 748 KB | Output is correct |
3 | Correct | 5 ms | 1068 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 25 ms | 2148 KB | Output is correct |
2 | Correct | 49 ms | 2148 KB | Output is correct |
3 | Correct | 63 ms | 2276 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 176 ms | 3812 KB | Output is correct |
2 | Correct | 823 ms | 25556 KB | Output is correct |
3 | Correct | 8 ms | 1068 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 60 ms | 1516 KB | Output is correct |
2 | Correct | 369 ms | 6876 KB | Output is correct |
3 | Correct | 12 ms | 748 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 227 ms | 1532 KB | Output is correct |
2 | Correct | 253 ms | 3808 KB | Output is correct |
3 | Correct | 227 ms | 3936 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 216 ms | 3808 KB | Output is correct |
2 | Correct | 210 ms | 3808 KB | Output is correct |
3 | Correct | 286 ms | 3812 KB | Output is correct |