3出现RE,还有就是当我把数组的类型从int换成long之后,4WA就对了
查看原帖
3出现RE,还有就是当我把数组的类型从int换成long之后,4WA就对了
490022
qinjiahui楼主2021/3/6 20:08
java
import java.util.Scanner;
public class Main {
	public static void main(String[] args) {
		       long f[][] = new long[20][20];
		       long flag[][] = new long [20][20];
		       Scanner reader = new Scanner(System.in);
		       f[0][0] = 1;
		       int x,y,n,m;
		       int i,j;
		       n= reader.nextInt();
		       m = reader.nextInt();
		       x = reader.nextInt();
		       y= reader.nextInt();
		       flag[x][y] = 1;
		       flag[x+1][y+2] = 1;
		       flag[x+2][y+1] = 1;
		       if(x>=1) flag[x-1][y+2] = 1;
		       if(x>=2) flag[x-2][y+1] = 1;
		       if(x>=2 && y>=1) flag[x-2][y-1] = 1;
		       if(x>=1 && y>=2) flag[x-1][y-2] = 1;
		       if(y>=2) flag[x+1][y-2] = 1;
		       if(y>=1) flag[x+2][y-1] = 1;
		       for(i = 1;i<=n;i++) {
		    	   if(flag[i][0] == 0)
		    		   f[i][0] = 1;
		    	   if(flag[i][0] == 1)
		    		   break;
		    	   continue;
		       }
		       for(i = 1;i<=m;i++) {
		    	   if(flag[0][i] == 0)
		    		   f[0][i] = 1;
		    	   if(flag[0][i] == 1)
		    		   break;
		    	   continue;
		       }
		    	   for(i = 1;i<=n;i++) {
		    		   for(j = 1;j<=m;j++) {
		    			   if(flag[i][j] == 1)
		    				   continue;
		    			   else {
							f[i][j] = f[i-1][j]+f[i][j-1];
						}
		    		   }
		    	   }
		       
		       System.out.println(f[n][m]);
		    }
	}
2021/3/6 20:08
加载中...