#include using namespace std; #define forn(i,n) for(tint i=0;i<(tint)(n); i++) #define forsn(i,s,n) for(tint i=(s);i<(tint)(n); i++) #define debug(x) cout << #x << " = " << x << endl #define pb push_back #define mp make_pair typedef long long tint; int toNumber (string s) { int Number; if ( ! (istringstream(s) >> Number) ) Number = 0; // el string vacio lo manda al cero return Number; } string toString (int number) { ostringstream ostr; ostr << number; return ostr.str(); } tint ele(tint a, tint b){ if(b==0)return 1; if(b%2==0){ return ele((a*a), b/2); }else{ return a*ele((a*a), b/2); } } tint mcd(tint a, tint b){ if(a==0)return b; return mcd(b%a, a); } double d_abs(long a, long b){ if(a>b){ return a-b; } return b-a; } bool adentro(int a, int b, int n){ return a>=0 && b>=0 && a>n; int INF=1e9; vector< vector > vis(n, vector(n, INF)); vector< vector > vengo(n, vector(n, INF)); int a, b, c, d; cin>>a>>b>>c>>d; queue< pair > q; q.push(mp(a,b)); vis[a][b]=0; int dx[6]={-2, -2, 0, 2, 2, 0}; int dy[6]={-1,1,2,1,-1,-2}; while(!q.empty()){ pair toy=q.front(); //cout< ve; while(c!=a || d!=b){ int di=vengo[c][d]; //cout<