#include "vision.h"
#include <bits/stdc++.h>
using namespace std;

std::vector<int> getVisionPattern1d(){
    return {2, 2, 1, 2, 1, 1};
}

int getMove1d(std::vector<int> v){
    int n=v.size();
    if (n==3){
        if (v[0]!=1){
            return 0;
        } else {
            return 2;
        }
    } else {
        if (v[0]==2 and v[3]==2){
            return 0;
        } else if (v[0]==2){
            return 4;
        } else if (v[4]==2 and v[1]==2){
            return 4;
        } else if (v[4]==2){
            return 0;
        } else if (v[1]==2){
            return 1;
        } else {
            return 3;
        }
    }
    return 0;
}

std::vector<std::vector<int>> getVisionPattern2d(){
    return {{1, 2, 3}, {2, 3, 1}, {3, 1, 2}};
}

std::pair<int, int> getMove2d(std::vector<std::vector<int>> v){
    int x=0, y=0;
    if (v[2][1]==(v[1][1]+1)%3){
        x=2;
    }
    if (v[1][2]==(v[1][1]+1)%3){
        y=2;
    }
    return {y, x};
}