Submission #1189717

#TimeUsernameProblemLanguageResultExecution timeMemory
1189717oviyan_gandhiTwo Transportations (JOI19_transportations)C++20
8 / 100
158 ms27692 KiB
#include "Azer.h" #include <bits/stdc++.h> using namespace std; namespace { const int INF = 10000000; typedef pair<int, int> pii; int bn = -1, n, ctr = 0, ru = 0, rv = 0, rc = 0; // 11, 11, and 9 bit vector<vector<pii>> adj; void receive(int u, int v, int w) { if (bn == -1) bn = u; else { adj[u].push_back({v, w}); adj[v].push_back({u, w}); bn--; } if (bn == 0) Answer(); } } // namespace void InitA(int N, int A, vector<int> U, vector<int> V, vector<int> C) { n = N; adj.resize(N); for (int i = 0; i < A; i++) { adj[U[i]].push_back({V[i], C[i]}); adj[V[i]].push_back({U[i], C[i]}); } } void ReceiveA(bool x) { if (ctr < 11) ru += x*(1 << ctr); else if (ctr < 22) rv += x*(1 << (ctr - 11)); else rc += x*(1 << (ctr - 22)); if (++ctr == 31) { ctr = 0; receive(ru, rv, rc); ru = rv = rc = 0; } } vector<int> Answer() { vector<int> dist(n, INF); priority_queue<pii, vector<pii>, greater<pii>> pq; dist[0] = 0; pq.push({0, 0}); while (!pq.empty()) { auto [d, u] = pq.top(); pq.pop(); if (d > dist[u]) continue; for (auto [v, w] : adj[u]) { if (d + w < dist[v]) { dist[v] = d + w; pq.push({dist[v], v}); } } } return dist; }
#include "Baijan.h" #include <bits/stdc++.h> using namespace std; namespace { void send(int u, int v, int w) { for (int i = 0; i < 11; i++) SendB(u & (1 << i)); for (int i = 0; i < 11; i++) SendB(v & (1 << i)); for (int i = 0; i < 9; i++) SendB(w & (1 << i)); } } void InitB(int N, int B, vector<int> S, vector<int> T, vector<int> D) { send(B, 0, 0); for (int i = 0; i < B; i++) send(S[i], T[i], D[i]); } void ReceiveB(bool y) { }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...