Submission #758732

#TimeUsernameProblemLanguageResultExecution timeMemory
758732siewjhStray Cat (JOI20_stray)C++17
15 / 100
36 ms16508 KiB
#include "Anthony.h" #include <bits/stdc++.h> using namespace std; namespace { } vector<int> Mark(int N, int M, int A, int B, vector<int> U, vector<int> V) { vector<vector<pair<int, int>>> adj(N); for (int i = 0; i < M; i++){ adj[U[i]].push_back({V[i], i}); adj[V[i]].push_back({U[i], i}); } vector<int> dist(N, -1), marking(M); dist[0] = 0; queue<int> q; q.push(0); while (!q.empty()){ int x = q.front(); q.pop(); for (auto nxt : adj[x]){ int nn = nxt.first, edge = nxt.second; if (dist[nn] != -1){ if (dist[nn] == dist[x] - 1) continue; // already marked else marking[edge] = dist[x] % 3; } else{ marking[edge] = dist[x] % 3; dist[nn] = dist[x] + 1; q.push(nn); } } } return marking; }
#include "Catherine.h" #include <bits/stdc++.h> using namespace std; namespace { int A, B; } void Init(int A, int B) { ::A = A; ::B = B; } int Move(vector<int> y) { int types = 0; for (int i = 0; i < 3; i++) if (y[i]) types++; if (types == 1){ for (int i = 0; i < 3; i++) if (y[i]) return i; } else{ // types == 2 for (int i = 0; i < 3; i++) if (!y[i]) return (i + 1) % 3; } return -1; // will never happen }
#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...