#include #define int long long using namespace std; int dx[4]={0,1,0,-1},dy[4]={1,0,-1,0}; int dr[4][6]={{1,5,2,0,4,3},{4,1,0,3,5,2},{3,0,2,5,4,1},{2,1,5,3,0,4}}; signed main(){ int H,W; cin>>H>>W; int sx,sy; cin>>sx>>sy; sx--; sy--; int gx,gy; cin>>gx>>gy; gx--; gy--; vector G(H); for(int i=0;i>G[i]; vector>> dist(H,vector>(W,vector(6,-1))); dist[sx][sy][0]=0; queue> Q; Q.push({sx,sy,0}); while(!Q.empty()){ auto[x,y,r]=Q.front(); Q.pop(); for(int i=0;i<4;i++){ int X=x+dx[i],Y=y+dy[i],R=dr[i][r]; if(0<=X && X