Submission #24027008
Source Code Expand
import java.util.*; public class Main { public static void main(String[] args) { // 入力 Scanner sc = new Scanner(System.in); String s1 = sc.next(); String s2 = sc.next(); String s3 = sc.next(); int n = s1.length() / 2; // 各文字の登場回数 Map<Integer, Integer> m1 = new HashMap<Integer, Integer>(); Map<Integer, Integer> m2 = new HashMap<Integer, Integer>(); Map<Integer, Integer> m3 = new HashMap<Integer, Integer>(); for (int i = 'A'; i <= 'Z'; i++) { m1.put(i, 0); m2.put(i, 0); m3.put(i, 0); } for (int i = 0; i < n * 2; i++) { m1.replace(s1.charAt(i) + 0, m1.get(s1.charAt(i) + 0) + 1); m2.replace(s2.charAt(i) + 0, m2.get(s2.charAt(i) + 0) + 1); m3.replace(s3.charAt(i) + 0, m3.get(s3.charAt(i) + 0) + 1); } // 判定材料 int totalP = 0; int totalQ = 0; for (int i = 'A'; i <= 'Z'; i++) { // 1つめの金属からp個は取らなければならない int p = Math.max(0, m3.get(i) - m2.get(i)); totalP += p; // 1つめの金属からq個まで取っていい int q = Math.min(Math.min(m1.get(i), m3.get(i)), n); totalQ += q; // 確認用 // System.out.println("1つめの金属から取る" + (char) i + "は" + p + "~" + q + "個"); } // こたえ System.out.println((totalP <= n && n <= totalQ) ? "YES" : "NO"); } }
Submission Info
Submission Time | |
---|---|
Task | C - 錬金術士 |
User | tobi00604 |
Language | Java (OpenJDK 11.0.6) |
Score | 100 |
Code Size | 1391 Byte |
Status | AC |
Exec Time | 298 ms |
Memory | 46124 KiB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 100 / 100 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01.txt, sample_02.txt |
All | sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt, subtask2_13.txt, subtask2_14.txt, subtask2_15.txt, subtask2_16.txt, subtask2_17.txt, subtask2_18.txt, subtask2_19.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_01.txt | AC | 116 ms | 35480 KiB |
sample_02.txt | AC | 116 ms | 35360 KiB |
subtask1_01.txt | AC | 252 ms | 44404 KiB |
subtask1_02.txt | AC | 135 ms | 37288 KiB |
subtask1_03.txt | AC | 298 ms | 45128 KiB |
subtask1_04.txt | AC | 256 ms | 44000 KiB |
subtask1_05.txt | AC | 263 ms | 45668 KiB |
subtask1_06.txt | AC | 201 ms | 40136 KiB |
subtask1_07.txt | AC | 244 ms | 43496 KiB |
subtask1_08.txt | AC | 166 ms | 40220 KiB |
subtask1_09.txt | AC | 208 ms | 40676 KiB |
subtask1_10.txt | AC | 243 ms | 41452 KiB |
subtask1_11.txt | AC | 240 ms | 44164 KiB |
subtask1_12.txt | AC | 262 ms | 46124 KiB |
subtask1_13.txt | AC | 213 ms | 40432 KiB |
subtask1_14.txt | AC | 238 ms | 41604 KiB |
subtask1_15.txt | AC | 266 ms | 46072 KiB |
subtask1_16.txt | AC | 175 ms | 39848 KiB |
subtask1_17.txt | AC | 147 ms | 37740 KiB |
subtask1_18.txt | AC | 244 ms | 41868 KiB |
subtask1_19.txt | AC | 213 ms | 40192 KiB |
subtask2_01.txt | AC | 116 ms | 35392 KiB |
subtask2_02.txt | AC | 121 ms | 35536 KiB |
subtask2_03.txt | AC | 115 ms | 35356 KiB |
subtask2_04.txt | AC | 114 ms | 35324 KiB |
subtask2_05.txt | AC | 113 ms | 35324 KiB |
subtask2_06.txt | AC | 112 ms | 35400 KiB |
subtask2_07.txt | AC | 107 ms | 35444 KiB |
subtask2_08.txt | AC | 113 ms | 35524 KiB |
subtask2_09.txt | AC | 116 ms | 35316 KiB |
subtask2_10.txt | AC | 112 ms | 35272 KiB |
subtask2_11.txt | AC | 115 ms | 35468 KiB |
subtask2_12.txt | AC | 121 ms | 35468 KiB |
subtask2_13.txt | AC | 114 ms | 35348 KiB |
subtask2_14.txt | AC | 108 ms | 35396 KiB |
subtask2_15.txt | AC | 121 ms | 35288 KiB |
subtask2_16.txt | AC | 112 ms | 35352 KiB |
subtask2_17.txt | AC | 118 ms | 35536 KiB |
subtask2_18.txt | AC | 108 ms | 35376 KiB |
subtask2_19.txt | AC | 118 ms | 35452 KiB |