#include "vision.h"
#include<vector>
using namespace std;
std::vector<int> getVisionPattern1d()
{
    return {1,1,1,2,1,3};
}

int getMove1d(std::vector<int> v)
{
    int c=v.size()/2;
    if(c==2)
    {
        if(v.at(0)==3)
        {
            return 0;
        }
        return 4;
    }
    if(c==3)
    {
        if(v.at(1)==2)
        {
            return 6;
        }
        return 0;
    }
    if(v.at(0)!=1)
    {
        return 0;
    }
    return 2;
}

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

std::pair<int, int> getMove2d(std::vector<std::vector<int>> v)
{
    int c=v.size()/2,x,y;
    if(c==2)
    {
        if(v.at(1).at(1)==3)
        {
            return {1,1};
        }
        if(v.at(1).at(3)==3)
        {
            return {1,3};
        }
        if(v.at(3).at(1)==3)
        {
            return {3,1};
        }
        if(v.at(3).at(3)==3)
        {
            return {3,3};
        }
    }
    if(c==3)
    {
        if(v.at(1).at(1)==2)
        {
            return {0,0};
        }
        if(v.at(1).at(5)==2)
        {
            return {0,6};
        }
        if(v.at(5).at(1)==2)
        {
            return {6,0};
        }
        if(v.at(5).at(5)==2)
        {
            return {6,6};
        }
    }
    for(int i=0;i<3;i++)
    {
        for(int j=0;j<3;j++)
        {
            if(v.at(i).at(j)==2)
            {
                return {i,j};
            }
        }
    }
    return {0,0};
}
