結果

問題 No.323 yuki国
ユーザー 37zigen37zigen
提出日時 2016-03-14 03:16:33
言語 Java21
(openjdk 21)
結果
WA  
実行時間 -
コード長 1,478 bytes
コンパイル時間 3,603 ms
コンパイル使用メモリ 80,848 KB
実行使用メモリ 348,956 KB
最終ジャッジ日時 2024-09-25 11:48:12
合計ジャッジ時間 16,988 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 117 ms
41,864 KB
testcase_01 AC 122 ms
41,632 KB
testcase_02 AC 133 ms
43,404 KB
testcase_03 AC 133 ms
52,204 KB
testcase_04 AC 121 ms
42,168 KB
testcase_05 AC 175 ms
47,432 KB
testcase_06 AC 165 ms
43,320 KB
testcase_07 AC 112 ms
42,868 KB
testcase_08 AC 553 ms
345,288 KB
testcase_09 WA -
testcase_10 AC 138 ms
46,492 KB
testcase_11 AC 112 ms
43,516 KB
testcase_12 AC 156 ms
44,288 KB
testcase_13 WA -
testcase_14 AC 464 ms
345,316 KB
testcase_15 WA -
testcase_16 WA -
testcase_17 WA -
testcase_18 AC 220 ms
121,308 KB
testcase_19 AC 401 ms
221,856 KB
testcase_20 AC 450 ms
345,184 KB
testcase_21 AC 546 ms
345,440 KB
testcase_22 WA -
testcase_23 AC 533 ms
345,188 KB
testcase_24 AC 470 ms
345,304 KB
testcase_25 AC 519 ms
345,144 KB
testcase_26 AC 465 ms
345,200 KB
testcase_27 AC 522 ms
345,304 KB
testcase_28 WA -
testcase_29 WA -
testcase_30 AC 122 ms
45,248 KB
testcase_31 AC 132 ms
46,804 KB
testcase_32 AC 148 ms
47,512 KB
testcase_33 AC 149 ms
48,256 KB
testcase_34 AC 181 ms
49,988 KB
testcase_35 AC 129 ms
47,076 KB
testcase_36 AC 154 ms
48,220 KB
testcase_37 AC 111 ms
46,832 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

import java.util.ArrayDeque;
import java.util.Date;
import java.util.Queue;
import java.util.Scanner;
public class main{
	static class snow{
		int x,y,z;
		snow(int x,int y,int z){
			this.x=x;
			this.y=y;
			this.z=z;
		}
	}
	static int[] dx={1,0,-1,0};
	static int[] dy={0,1,0,-1};
	
	public static void main(String[] args){

		Scanner sc=new Scanner(System.in);
		long exec_time=new Date().getTime();
		int h=sc.nextInt();
		int w=sc.nextInt();
		int a=sc.nextInt();
		int si=sc.nextInt();
		int sj=sc.nextInt();
		int b=sc.nextInt();
		int gi=sc.nextInt();
		int gj=sc.nextInt();
		
		boolean[][] map=new boolean[h][w];
		for(int i=0;i<h;i++){
			String tmp=sc.next();
			for(int j=0;j<w;j++){
				if(tmp.charAt(j)=='*')map[i][j]=true;
			}
		}
		boolean[][][] used=new boolean[h][w][100000];
		Queue<snow> q=new ArrayDeque<>();
		q.add(new snow(si,sj,a));
		int count=0;
		while(!q.isEmpty()){
			snow now=q.poll();
			count++;
			if(count>300000)break;
			if(now.x==gi&&now.y==gj&&now.z==b){
				System.out.println("Yes");
				return;
			}
			for(int i=0;i<4;i++){
				int nextx=now.x+dx[i];
				int nexty=now.y+dy[i];
				if(nextx>=0&&nextx<h&&nexty>=0&&nexty<w){
					int nextz=now.z+(map[nextx][nexty]?1:-1);
					if(nextz<=0||nextz>5000||used[nextx][nexty][nextz])continue;
					q.add(new snow(nextx,nexty,nextz));
					used[nextx][nexty][nextz]=true;
				}
			}
		}
		System.out.println("No");

			System.err.println(new Date().getTime()-exec_time+"ms");		
		}
	}


0