#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,3},{1,3,1}};
}

std::pair<int, int> getMove2d(std::vector<std::vector<int>> v)
{
    int c=v.size()/2,x,y;
    if(c==2)
    {
        if(v.at(0).at(2)==3)
        {
            x=4;
        }
        else
        {
            x=0;
        }
        if(v.at(2).at(0)==3)
        {
            y=4;
        }
        else
        {
            y=0;
        }
        return {x,y};
    }
    if(c==3)
    {
        if(v.at(3).at(2)==2)
        {
            return {3,2};
        }
        if(v.at(3).at(4)==2)
        {
            return {3,4};
        }
        if(v.at(2).at(3)==2)
        {
            return {2,3};
        }
        if(v.at(4).at(3)==2)
        {
            return {4,3};
        }
    }
    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};
}
