結果
| 問題 |
No.179 塗り分け
|
| コンテスト | |
| ユーザー |
uafr_cs
|
| 提出日時 | 2015-08-06 18:59:08 |
| 言語 | Java (openjdk 23) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,361 bytes |
| コンパイル時間 | 2,203 ms |
| コンパイル使用メモリ | 77,860 KB |
| 実行使用メモリ | 56,448 KB |
| 最終ジャッジ日時 | 2024-10-02 14:43:37 |
| 合計ジャッジ時間 | 11,162 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 6 |
| other | AC * 34 WA * 6 |
ソースコード
import java.util.Arrays;
import java.util.HashSet;
import java.util.LinkedList;
import java.util.Scanner;
import java.util.Set;
public class Main {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
final int H = sc.nextInt();
final int W = sc.nextInt();
boolean[][] fields = new boolean[H][W];
for(int i = 0; i < H; i++){
char[] inputs = sc.next().toCharArray();
for(int j = 0; j < W; j++){
fields[i][j] = inputs[j] == '#';
}
}
boolean[][] checked = new boolean[H][W];
for(int dy = 0; dy < H; dy++){
for(int dx = 0; dx < W; dx++){
if(dx == 0 && dy == 0){ continue; }
for(int i = 0; i < H; i++){
for(int j = 0; j < W; j++){
checked[i][j] = false;
}
}
for(int y = 0; y < H - dy; y++){
for(int x = 0; x < W - dx; x++){
final int nx = x + dx;
final int ny = y + dy;
if(checked[y][x] || checked[ny][nx]){ continue; }
if(fields[y][x] && fields[ny][nx]){
checked[y][x] = checked[ny][nx] = true;
}
}
}
boolean flg = true;
for(int i = 0; i < H; i++){
for(int j = 0; j < W; j++){
if(fields[i][j] && !checked[i][j]){
flg = false;
}
}
}
if(flg){
System.out.println("YES");
return;
}
}
}
System.out.println("NO");
}
}
uafr_cs