結果

問題 No.1941 CHECKER×CHECKER(1)
コンテスト
ユーザー eagle
提出日時 2022-05-28 13:23:00
言語 Java
(openjdk 26.0.2.1 + ACL)
コンパイル:
javac -J-Duser.language=en -encoding UTF8 -cp /opt/aclib/ac_library.jar _filename_
実行:
java -ea -Xmx700m -Xss256M -DONLINE_JUDGE=true -cp .:/opt/aclib/ac_library.jar _class_
結果
AC  
実行時間 56 ms / 2,000 ms
+ 998µs
コード長 1,375 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 3,245 ms
コンパイル使用メモリ 83,876 KB
実行使用メモリ 42,880 KB
最終ジャッジ日時 2026-09-01 00:39:46
合計ジャッジ時間 5,855 ms
ジャッジサーバーID
(参考情報)
judge3_0 / judge2_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 12
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

import java.util.*;

public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ
		Scanner sc = new Scanner(System.in);
		char[][] S = new char[3][3];
		for(int i = 0; i < 3; i++) {
			String str = sc.next();
			for(int j = 0; j < 3; j++) {
				S[i][j] = str.charAt(j);
			}
		}
		//横一列が条件を満たすか確認する
		boolean flg = true;
		String ans;
		for(int i = 0; i < 3; i++) {
			//左端の文字を取り出す
			char moji = S[i][0];
			for(int j = 1; j < 3; j++) {
				//隣と同じ文字の場合ループを終了する
				if(moji == S[i][j]) {
					flg = false;
					break;
				}
				moji = S[i][j];
			}
			//隣で同じ文字が見つかった場合ループを終了する
			if(!flg) {
				break;
			}
		}
		if(flg) {
			//縦一列が条件を満たすか確認する
			for(int j = 0; j < 3; j++) {
				//上端の文字を取り出す
				char moji = S[0][j];
				for(int i = 1; i < 3; i++) {
					//隣と同じ文字の場合ループを終了する
					if(moji == S[i][j]) {
						flg = false;
						break;
					}
					moji = S[i][j];
				}
				//隣で同じ文字が見つかった場合ループを終了する
				if(!flg) {
					break;
				}
			}
			if(flg) {
				ans = "Yes";
			} else {
				ans = "No";
			}
		} else {
			ans = "No";
		}
		System.out.println(ans);
	}
}
0