#include #include #include #include #include #include #include #include #include #define inf 0x3f3f3f3f using namespace std; int dx[]={0,0,-1,1}; int dy[]={-1,1,0,0}; struct node { int a,b; char dir; }op[10010]; int t,n,m,cnt,mp[105][105],ans; char s[10]; int dfs(int x,int y,int step) { int nx,ny,i,aa,bb,flag; if(step==cnt) return 1; aa=op[step].a; bb=op[step].b; for(i=aa;i<=bb;i++) { switch(op[step].dir) { case 'L':nx=x;ny=y-i;break; case 'R':nx=x;ny=y+i;break; case 'U':nx=x-i;ny=y;break; case 'D':nx=x+i;ny=y; } if(nx<0||nx>=n||ny<0||ny>=m) continue; // printf(i:%d x;%d y:%d nx:%d ny:%d ,i,x,y,nx,ny); flag=1; if(op[step].dir=='D') { for(int j=x;j<=nx;j++) { if(mp[j][y]) { flag=0; break; } } } else if(op[step].dir=='R') { for(int j=y;j<=ny;j++) { if(mp[x][j]) { flag=0; break; } } } else if(op[step].dir=='U') { for(int j=x;j>=nx;j--) { if(mp[j][y]) { flag=0; break; } } } else if(op[step].dir=='L') { for(int j=y;j>=ny;j--) { if(mp[x][j]) { flag=0; break; } } } if(flag) { if(dfs(nx,ny,step+1)) return 1; } } return 0; } int main() { int i,j; scanf(%d,&t); while(t--) { memset(mp,0,sizeof mp); scanf(%d%d,&n,&m); for(i=0;i
i = j = & ri = i;
淺談Qt事件的路由機制:鼠標事件,淺談qt 請注意,本文是
[cpp] /*  
poj 2488 A Knight's Jo
// Eddy 繼續 Problem Descri
今天運行程序是出現了this application has