#include "Anthony.h"
#include <bits/stdc++.h>
using namespace std;
#define f1r(i, a, b) for (int i = a; i < b; ++i)
#define f0r(i, a) f1r(i, 0, a)
#define each(t, a) for (auto& t : a)
#define pb push_back
#define eb emplace_back
#define mp make_pair
#define f first
#define s second
using vi = vector<int>;
using pi = pair<int, int>;
using vpi = vector<pi>;
using ll = long long;
// 0 -> 1 -> 2
vi Mark(int n, int m, int a, int b, vi U, vi V) {
vector<vi> g(n);
auto cp = [&](int u, int v) -> pi {
if (u > v) swap(u, v);
return mp(u, v);
};
map<pi, int> conv;
vpi ed;
vi res(m);
f0r(i, m) {
int u = U[i];
int v = V[i];
conv[cp(u, v)] = i;
g[u].pb(v);
g[v].pb(u);
ed.pb(cp(u, v));
}
if (a >= 3) { // bfs work
vi dist(n, -1);
list<int> que;
dist[0] = 0;
que.pb(0);
while (!que.empty()) {
int u = que.front();
que.pop_front();
each(v, g[u]) {
if (dist[v] != -1) continue;
dist[v] = dist[u] + 1;
que.push_back(v);
}
}
each(e, ed) {
int u = e.f;
int v = e.s;
int id = conv[cp(u, v)];
if (dist[u] == dist[v]) {
res[id] = dist[u] % 3;
} else {
if (dist[u] > dist[v]) {
swap(u, v);
}
res[id] = dist[u] % 3;
}
}
} else {
// do nothing for now
}
return res;
}
#include "Catherine.h"
#include <bits/stdc++.h>
using namespace std;
#define f1r(i, a, b) for (int i = a; i < b; ++i)
#define f0r(i, a) f1r(i, 0, a)
#define each(t, a) for (auto& t : a)
#define pb push_back
#define eb emplace_back
#define mp make_pair
#define f first
#define s second
using vi = vector<int>;
using pi = pair<int, int>;
using vpi = vector<pi>;
using ll = long long;
namespace {
int a, b;
} // namespace
void Init(int A, int B) {
::a = A;
::b = B;
}
int MoveT(vi& y) { // fails right now
return -1;
}
int MoveG(vi& v) {
int a0 = y[0];
int a1 = y[1];
int a2 = y[2];
if (a0 && a1) {
return 0;
} else if (a1 && a2) {
return 1;
} else if (a2 && a0) {
return 2;
} else if (a0) {
return 0;
} else if (a1) {
return 1;
} else if (a2) {
return 2;
}
return -1;
}
int Move(vi y) {
if (a >= 3) {
return MoveG(y);
} else {
return MoveT(y);
}
}
Compilation message
Catherine.cpp: In function 'int MoveG(vi&)':
Catherine.cpp:36:14: error: 'y' was not declared in this scope
36 | int a0 = y[0];
| ^