結果

問題 No.11 カードマッチ
ユーザー shinshin
提出日時 2022-05-17 18:19:18
言語 Java21
(openjdk 21)
結果
MLE  
実行時間 -
コード長 1,384 bytes
コンパイル時間 3,791 ms
コンパイル使用メモリ 78,820 KB
実行使用メモリ 742,728 KB
最終ジャッジ日時 2024-09-15 13:12:21
合計ジャッジ時間 15,644 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 51 ms
37,020 KB
testcase_01 AC 51 ms
36,908 KB
testcase_02 AC 50 ms
36,768 KB
testcase_03 AC 50 ms
37,080 KB
testcase_04 MLE -
testcase_05 AC 329 ms
36,892 KB
testcase_06 MLE -
testcase_07 MLE -
testcase_08 MLE -
testcase_09 MLE -
testcase_10 MLE -
testcase_11 MLE -
testcase_12 MLE -
testcase_13 MLE -
testcase_14 MLE -
testcase_15 AC 135 ms
100,628 KB
testcase_16 MLE -
testcase_17 AC 251 ms
214,564 KB
testcase_18 MLE -
権限があれば一括ダウンロードができます

ソースコード

diff #

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayDeque;
import java.util.ArrayList;
import java.util.Queue;

public class No11 {

	public static void main(String[] args) throws IOException{
		//カードマッチ
		String[] text = readStr();
		int W = Integer.parseInt(text[0]);
		int H = Integer.parseInt(text[1]);
		int N = Integer.parseInt(text[2]);
		int S , K , count = 0;
		Queue<Integer> qu = new ArrayDeque<>();
		
		int[][] hand = new int[W + 1][H + 1];
		for(int i = 0;i < N;i++) {
			S = Integer.parseInt(text[i + 3].split(" ")[0]);
			K = Integer.parseInt(text[i + 3].split(" ")[1]);
			
			hand[S][K] = 1;
			qu.add(S);
			qu.add(K);
		}
		
		for(int i = 0;i < N;i++) {
			S = qu.poll();
			K = qu.poll();
			
			for(int kn = 1;kn <= H;kn++) {
				if(hand[S][kn] != 1) {
					count++;
					hand[S][kn] = 1;
				}
			}
			for(int sn = 1;sn <= W;sn++) {
				if(hand[sn][K] != 1) {
					count++;
					hand[sn][K] = 1;
				}
			}
		}
		
		System.out.println(count);

	}
	
	public static String[] readStr() throws IOException{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		ArrayList<String> list = new ArrayList<>();

		do {
			list.add(br.readLine());
		}while(br.ready());

		br.close();

		String[] text = new String[list.size()];
		list.toArray(text);

		return text;

	}

}
0