#include "Anthony.h"
#include <bits/stdc++.h>
using namespace std;
namespace {
const int N=20010, INF=1e9;
int a[6]={0, 1, 1, 0, 0, 1};
int dist[N];
vector<pair<int, int>> adj[N];
queue<int> q;
}
vector<int> Mark(int N, int M, int A, int B, vector<int> U, vector<int> V) {
for(int i=0; i<M; i++) adj[U[i]].push_back({V[i], i}), adj[V[i]].push_back({U[i], i});
if(A>=3) {
q.push(0), fill(dist+1, dist+N, INF);
vector<int> ret(M, 0);
int cnt=0;
while(!q.empty()) {
int curr=q.front(); q.pop();
for(auto [next, k]:adj[curr]) {
if(dist[next]>dist[curr]+1) dist[next]=dist[curr]+1, q.push(next);
if(dist[next]>=dist[curr]) ret[k]=dist[curr]%3;
}
}
return ret;
}
vector<int> ret(M, 0);
function<void(int, int, int)> dfs=[&](int curr, int prev, int x) {
for(auto [next, k]:adj[curr]) if(next!=prev) {
if(adj[curr].size()+(curr==0)==2) ret[k]=(x+1)%6;
else ret[k]=1-a[x];
dfs(next, curr, ret[k]);
}
};
dfs(0, -1, 1);
for(int i=0; i<M; i++) ret[i]=a[ret[i]];
return ret;
}
#include "Catherine.h"
#include <bits/stdc++.h>
using namespace std;
namespace {
int A, B, cnt, lst, dir=-1;
int a[6]={0, 1, 1, 0, 0, 1}, x[5];
}
void Init(int A, int B) {
::A=A, ::B=B;
}
int Move(vector<int> y) {
if(A>=3) {
for(int i=0; i<3; i++) if(y[i] && y[(i+1)%3]) return i;
for(int i=0; i<3; i++) if(y[i]) return i;
}
if(dir<0) {
if(y[0]+y[1]==0) {
dir=lst; return -1;
}
if(y[0]+y[1]>=2+(!cnt)) {
dir=(y[0]>y[1]); return dir;
}
if(!cnt) {
x[0]=(y[1]>0), lst=x[1]=(y[1]>1);
return x[1];
}
if(cnt==1) {
lst=x[2]=y[1]; return x[2];
}
if(cnt==2) {
lst=x[3]=y[1]; return x[3];
}
x[4]=y[1];
for(int i=0; i<6; i++) {
bool flag=true;
for(int j=0; j<5; j++) flag&=(a[(i+j)%6]==x[j]);
if(flag) {
dir=lst; return -1;
}
}
dir=y[1]; return dir;
}
else {
if(y[0]+y[1]==1) dir=y[1];
else dir=!dir;
return dir;
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |