結果
| 問題 | No.24 数当てゲーム |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2018-04-22 18:12:46 |
| 言語 | Java (openjdk 23) |
| 結果 |
AC
|
| 実行時間 | 134 ms / 5,000 ms |
| コード長 | 3,099 bytes |
| コンパイル時間 | 3,589 ms |
| コンパイル使用メモリ | 78,788 KB |
| 実行使用メモリ | 54,044 KB |
| 最終ジャッジ日時 | 2024-06-27 05:42:30 |
| 合計ジャッジ時間 | 5,627 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 10 |
ソースコード
import java.util.Scanner;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Arrays;
import java.util.Collections;
// ***問題文***
// 太郎君と二郎君はゲームをしています。
// まず最初に二郎君は 0から9までの数字を1つ、心の中で思い浮かべます。
// 太郎君は、重複しないような0から9までの数字から 4つ 二郎君に提示し、
// 二郎君は心の中で思い浮かべた数字が、提示された4つの数字の中にあれば YES 、
// 無ければ NO と答えます。
// これを1ターンとし、次のターンにまた太郎君は4つの数字を提示することを繰り返します。
// 前に出した数字と同じ数字を提示しても構いません。
// 入力に太郎君が提示した数字と、二郎君の答えが与えられるので、
// 二郎君が思い浮かべたであろう数字を出力してください。
// 必ず出力する数字が1つと確定できるような入力が与えられます。
// ***入力***
// N
// A1 B1 C1 D1 R1
// A2 B2 C2 D2 R2
// …
// AN BN CN DN RN
// 1行目に、ターン数を表すN (2≤N≤6) が与えられます。
// 続くN行に、太郎君が提示した4つの数字 Ai,Bi,Ci,Di (0≤Ai,Bi,Ci,Di≤9, 1≤i≤N) と
// 二郎君の答えの文字列 Ri (YES または NO) が半角スペース区切りで与えられます。
// (Ai,Bi,Ci,Diは互いに異なる)
// ***出力***
// 二郎君が思い浮かべたであろう数字を出力してください。
// 最後に改行してください。
public class No24 {
public static void main(String[] args) {
// 標準入力から読み込む際に、Scannerオブジェクトを使う。
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
int A = 0;
int B = 0;
int C = 0;
int D = 0;
String R = "";
// hashap key value
HashMap<Integer,Integer> map = new HashMap<Integer,Integer>();
// hashmapの初期化
for(int i = 0; i < 10; i++) {
map.put(i, 0);
}
for(int i = 0; i < N; i++) {
A = sc.nextInt();
B = sc.nextInt();
C = sc.nextInt();
D = sc.nextInt();
R = sc.next();
if("YES".equals(R)) {
map.put(A, map.get(A) + 1);
map.put(B, map.get(B) + 1);
map.put(C, map.get(C) + 1);
map.put(D, map.get(D) + 1);
}else {
map.put(A, map.get(A) - 1);
map.put(B, map.get(B) - 1);
map.put(C, map.get(C) - 1);
map.put(D, map.get(D) - 1);
}
}
// for(int k: map.keySet()) {
// System.out.println("map" + k + " = " + map.get(k));
// }
int maxk = 0;
int maxv = -10;
for(int k: map.keySet()) {
if(map.get(k) > maxv) {
maxk = k;
maxv = map.get(k);
}
}
System.out.println(maxk);
}
}