| 15385 | 2025-02-19 10:25:09 | Ablablabla | Autópálya infláció | cpp17 | Wrong answer 15/100 | 108ms | 71656 KiB |
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<ll, ll> pii;
const ll INF = 4e18 + 7;
const ll MOD = 1e9 + 7;
vector<ll> ans;
vector<ll> mely;
struct comp{
bool operator()(ll a, ll b){
if(ans[a] == ans[b]){
return mely[a] > mely[b];
}
return ans[a] > ans[b];
}
};
int main()
{
ll n, m;
cin >> n >> m;
vector<vector<ll>> csucsok(n, vector<ll>()), hossz(n, vector<ll>());
for(ll i = 0; i < m; i++){
ll a, b, c;
cin >> a >> b >> c;
a--; b--;
csucsok[a].push_back(b);
hossz[a].push_back(c);
csucsok[b].push_back(a);
hossz[b].push_back(c);
}
priority_queue<ll, vector<ll>, comp> bejar;
ans.assign(n, INF);
ans[0] = 0;
bejar.push(0);
vector<bool> bejart(n);
vector<vector<ll>> opciok(n, vector<ll>(n + 2, INF));
opciok[0][1] = 0;
mely.assign(n, 0);
while(!bejar.empty()){
ll akt = bejar.top();
bejar.pop();
if(bejart[akt]) continue;
bejart[akt] = 1;
for(ll i = 0; i < csucsok[akt].size(); i++){
ll kovi = csucsok[akt][i];
ll suly = hossz[akt][i];
if(bejart[kovi]) continue;
for(int i = 1; i <= n; i++){
if(opciok[akt][i] == INF) continue;
ll tav = (opciok[akt][i] + suly*(1ll << (i - 1)));
opciok[kovi][i + 1] = min(opciok[kovi][i + 1], tav);
if(ans[kovi] > tav) mely[kovi] = i + 1;
ans[kovi] = min(ans[kovi], tav);
}
bejar.push(kovi);
}
}
for(int i = 1; i < n; i++){
cout << ans[i] % MOD << "\n";
}
/*for(int j = 1; j <= n; j++){
for(int i = 0; i < n; i++){
if(opciok[i][j] == INF){
cout << "-1\t";
} else{
cout << opciok[i][j] << "\t";
}
}
cout << "\n";
}*/
}
| Subtask | Sum | Test | Verdict | Time | Memory | ||
|---|---|---|---|---|---|---|---|
| subtask1 | 0/0 | ||||||
| 1 | Accepted | 1ms | 316 KiB | ||||
| 2 | Wrong answer | 92ms | 71476 KiB | ||||
| subtask2 | 0/8 | ||||||
| 3 | Accepted | 75ms | 71220 KiB | ||||
| 4 | Wrong answer | 86ms | 71220 KiB | ||||
| 5 | Wrong answer | 74ms | 71368 KiB | ||||
| 6 | Accepted | 86ms | 71476 KiB | ||||
| 7 | Wrong answer | 74ms | 71224 KiB | ||||
| subtask3 | 15/15 | ||||||
| 8 | Accepted | 1ms | 508 KiB | ||||
| 9 | Accepted | 1ms | 508 KiB | ||||
| 10 | Accepted | 1ms | 316 KiB | ||||
| 11 | Accepted | 1ms | 508 KiB | ||||
| 12 | Accepted | 1ms | 316 KiB | ||||
| 13 | Accepted | 1ms | 316 KiB | ||||
| 14 | Accepted | 1ms | 316 KiB | ||||
| 15 | Accepted | 1ms | 316 KiB | ||||
| 16 | Accepted | 1ms | 316 KiB | ||||
| 17 | Accepted | 1ms | 316 KiB | ||||
| 18 | Accepted | 1ms | 316 KiB | ||||
| subtask4 | 0/34 | ||||||
| 19 | Accepted | 92ms | 71512 KiB | ||||
| 20 | Wrong answer | 103ms | 71656 KiB | ||||
| 21 | Wrong answer | 103ms | 71652 KiB | ||||
| 22 | Accepted | 92ms | 71564 KiB | ||||
| 23 | Accepted | 104ms | 71484 KiB | ||||
| 24 | Wrong answer | 104ms | 71420 KiB | ||||
| 25 | Accepted | 92ms | 71652 KiB | ||||
| 26 | Accepted | 90ms | 71444 KiB | ||||
| 27 | Wrong answer | 89ms | 71328 KiB | ||||
| 28 | Wrong answer | 72ms | 71124 KiB | ||||
| 29 | Wrong answer | 86ms | 71028 KiB | ||||
| 30 | Wrong answer | 74ms | 62260 KiB | ||||
| 31 | Wrong answer | 71ms | 70708 KiB | ||||
| 32 | Wrong answer | 87ms | 71036 KiB | ||||
| 33 | Wrong answer | 100ms | 70968 KiB | ||||
| subtask5 | 0/21 | ||||||
| 34 | Wrong answer | 4ms | 2360 KiB | ||||
| 35 | Wrong answer | 7ms | 2356 KiB | ||||
| 36 | Wrong answer | 7ms | 2356 KiB | ||||
| 37 | Wrong answer | 7ms | 2580 KiB | ||||
| 38 | Accepted | 7ms | 2572 KiB | ||||
| 39 | Accepted | 7ms | 2448 KiB | ||||
| 40 | Wrong answer | 7ms | 2356 KiB | ||||
| 41 | Wrong answer | 7ms | 2336 KiB | ||||
| 42 | Wrong answer | 4ms | 2360 KiB | ||||
| 43 | Wrong answer | 3ms | 2356 KiB | ||||
| 44 | Wrong answer | 4ms | 2356 KiB | ||||
| 45 | Wrong answer | 3ms | 2356 KiB | ||||
| 46 | Wrong answer | 4ms | 2356 KiB | ||||
| 47 | Wrong answer | 3ms | 2188 KiB | ||||
| 48 | Wrong answer | 4ms | 2356 KiB | ||||
| 49 | Wrong answer | 4ms | 2356 KiB | ||||
| subtask6 | 0/22 | ||||||
| 50 | Wrong answer | 90ms | 71476 KiB | ||||
| 51 | Wrong answer | 105ms | 71548 KiB | ||||
| 52 | Wrong answer | 104ms | 71516 KiB | ||||
| 53 | Wrong answer | 93ms | 71476 KiB | ||||
| 54 | Accepted | 92ms | 71484 KiB | ||||
| 55 | Accepted | 104ms | 71572 KiB | ||||
| 56 | Wrong answer | 96ms | 71476 KiB | ||||
| 57 | Wrong answer | 108ms | 71416 KiB | ||||
| 58 | Wrong answer | 9ms | 8256 KiB | ||||
| 59 | Wrong answer | 74ms | 71040 KiB | ||||
| 60 | Wrong answer | 86ms | 71220 KiB | ||||
| 61 | Wrong answer | 86ms | 71276 KiB | ||||
| 62 | Wrong answer | 71ms | 69700 KiB | ||||
| 63 | Wrong answer | 72ms | 70248 KiB | ||||
| 64 | Wrong answer | 90ms | 70908 KiB | ||||
| 65 | Wrong answer | 103ms | 70836 KiB | ||||
| 66 | Wrong answer | 101ms | 71256 KiB | ||||