| ||||||||||
| Online Judge | Problem Set | Authors | Online Contests | User | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest | |||||||||
Re:用java写的,大牛帮忙看下为啥WAIn Reply To:用java写的,大牛帮忙看下为啥WA Posted by:mmx21 at 2010-08-04 12:05:47 > import java.io.*;
> import java.util.*;
>
> public class Main {
>
> public static int[][] dir = {{-2,-1},{-2,1},{-1,-2},{-1,2},{1,-2},{1,2},{2,-1},{2,1}};
> public static int times;
> public static int m,n;
> public static boolean[][] flag = new boolean[50][50];
> public static boolean tag;
> public static int[] tracex = new int[50];
> public static int[] tracey = new int[50];
> public static void DFS(int i, int j)
> {
> if(tag) return;
> int x,y;
> times++;
> tracex[times] = i;
> tracey[times] = j;
> if(times == m*n)
> {
> tag = true;
> return;
> }
> flag[i][j] = false;
> for(int p=0;p<8;p++)
> {
> x = i+dir[p][1];
> y = j+dir[p][0];
> if(x>0&&x<=m&&y>0&&y<=n&&flag[x][y])
> {
> DFS(x,y);
> times--;
> }
> }
> flag[i][j]=true;
> }
>
> public static void main(String[] args)
> {
> int i,j,k;
> Scanner cin = new Scanner(new BufferedInputStream(System.in));
> int count = cin.nextInt();
> for(i=1;i<=count;i++)
> {
> times = 0;
> tag = false;
> m = cin.nextInt();
> n = cin.nextInt();
> for(k=1;k<50;k++)
> for(j=1;j<50;j++)
> flag[k][j]=true;
> DFS(1,1);
> System.out.println("Scenario #" + i +":");
> if(tag)
> {
> for(j=1;j<=m*n;j++)
> {
> char c = (char) (tracey[j]+64);
> System.out.print(c);
> System.out.print(tracex[j]);
> }
> System.out.println();
> }
> else
> System.out.println("Impossible");
> if(i!=count)
> System.out.println();
> }
> }
>
> }
你“Impossible”确定打对了么?。。我看怎么都是小写
Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator