提出 #12745093
ソースコード 拡げる
#include <bits/stdc++.h>
using namespace std;
#define ll long long
int main() {
int N;
cin >> N;
ll A, B, C;
cin >> A >> B >> C;
vector<string> S(N+1);
for (int i = 0; i < N; i++) cin >> S[i];
S[N] == "--";
vector<char> ans(N);
for (int i = 0; i < N; i++) {
if (S[i] == "AB") {
if (A == 0 && B == 0) {
cout << "No" << endl;
return 0;
}
if (A == 0) {
ans[i] = 'A';
A++;
B--;
}else if (B == 0) {
ans[i] = 'B';
A--;
B++;
}else if (A == 1 && C == 0 && S[i+1] == "AC") {
ans[i] = 'A';
A++;
B--;
}else if (B == 1 && C == 0 && S[i+1] == "BC") {
ans[i] = 'B';
B++;
A--;
}else if (A < B) {
ans[i] = 'A';
A++;
B--;
}else {
ans[i] = 'B';
B++;
A--;
}
}
if (S[i] == "AC") {
if (A == 0 && C == 0) {
cout << "No" << endl;
return 0;
}
if (A == 0) {
ans[i] = 'A';
A++;
C--;
}else if (C == 0) {
ans[i] = 'C';
C++;
A--;
}else if (A == 1 && B == 0 && S[i+1] == "AB") {
ans[i] = 'A';
A++;
C--;
}else if (C == 1 && B == 0 && S[i+1] == "BC") {
ans[i] = 'C';
C++;
A--;
}else if (A < C) {
ans[i] = 'A';
A++;
C--;
}else {
ans[i] = 'C';
C++;
A--;
}
}
if (S[i] == "BC") {
if (B == 0 && C == 0) {
cout << "No" << endl;
return 0;
}
if (B == 0) {
ans[i] = 'B';
B++;
C--;
}else if (C == 0) {
ans[i] = 'C';
C++;
B--;
}else if (B == 1 && A == 0 && S[i+1] == "AB") {
ans[i] = 'B';
B++;
C--;
}else if (C == 1 && A == 0 && S[i+1] == "AC") {
ans[i] = 'C';
C++;
B--;
}else if (B < C) {
ans[i] = 'B';
B++;
C--;
}else {
ans[i] = 'C';
C++;
B--;
}
}
}
cout << "Yes\n";
for (int i = 0; i < N; i++) cout << ans[i] << "\n";
return 0;
}
提出情報
| 提出日時 | |
|---|---|
| 問題 | F - Three Variables Game |
| ユーザ | hitoare |
| 言語 | C++ (GCC 9.2.1) |
| 得点 | 600 |
| コード長 | 2991 Byte |
| 結果 | AC |
| 実行時間 | 33 ms |
| メモリ | 6428 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 600 / 600 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | Sample_01.txt, Sample_02.txt, Sample_03.txt, Sample_04.txt |
| All | Sample_01.txt, Sample_02.txt, Sample_03.txt, Sample_04.txt, killer_01.txt, killer_02.txt, killer_03.txt, killer_04.txt, killer_05.txt, killer_06.txt, killer_07.txt, killer_08.txt, killer_09.txt, killer_10.txt, one_alive01.txt, one_alive02.txt, one_alive03.txt, one_alive04.txt, one_death01.txt, one_death02.txt, one_death03.txt, one_death04.txt, prime_alive01.txt, prime_alive02.txt, prime_alive03.txt, prime_alive04.txt, prime_alive05.txt, prime_death01.txt, prime_death02.txt, prime_death03.txt, prime_death04.txt, prime_death05.txt, prime_death06.txt, prime_death07.txt, prime_death08.txt, prime_death09.txt, prime_death10.txt, superkiller_01.txt, superkiller_02.txt, superkiller_03.txt, superkiller_04.txt, superkiller_05.txt, superkiller_06.txt, superkiller_07.txt, superkiller_08.txt, superkiller_09.txt, superkiller_10.txt, three_01.txt, three_02.txt, three_03.txt, three_04.txt, two_01.txt, two_02.txt, two_03.txt, two_04.txt, two_05.txt, two_06.txt, two_07.txt, two_08.txt, zero_01.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| Sample_01.txt | AC | 3 ms | 3628 KiB |
| Sample_02.txt | AC | 3 ms | 3628 KiB |
| Sample_03.txt | AC | 2 ms | 3628 KiB |
| Sample_04.txt | AC | 2 ms | 3596 KiB |
| killer_01.txt | AC | 30 ms | 6248 KiB |
| killer_02.txt | AC | 27 ms | 6428 KiB |
| killer_03.txt | AC | 27 ms | 6260 KiB |
| killer_04.txt | AC | 29 ms | 6272 KiB |
| killer_05.txt | AC | 32 ms | 6336 KiB |
| killer_06.txt | AC | 21 ms | 6188 KiB |
| killer_07.txt | AC | 33 ms | 6272 KiB |
| killer_08.txt | AC | 31 ms | 6428 KiB |
| killer_09.txt | AC | 28 ms | 6200 KiB |
| killer_10.txt | AC | 31 ms | 6352 KiB |
| one_alive01.txt | AC | 2 ms | 3596 KiB |
| one_alive02.txt | AC | 2 ms | 3592 KiB |
| one_alive03.txt | AC | 33 ms | 6340 KiB |
| one_alive04.txt | AC | 26 ms | 6360 KiB |
| one_death01.txt | AC | 6 ms | 3632 KiB |
| one_death02.txt | AC | 2 ms | 3600 KiB |
| one_death03.txt | AC | 21 ms | 6196 KiB |
| one_death04.txt | AC | 21 ms | 6200 KiB |
| prime_alive01.txt | AC | 2 ms | 3488 KiB |
| prime_alive02.txt | AC | 2 ms | 3596 KiB |
| prime_alive03.txt | AC | 27 ms | 6332 KiB |
| prime_alive04.txt | AC | 28 ms | 6368 KiB |
| prime_alive05.txt | AC | 27 ms | 6428 KiB |
| prime_death01.txt | AC | 2 ms | 3548 KiB |
| prime_death02.txt | AC | 2 ms | 3436 KiB |
| prime_death03.txt | AC | 22 ms | 6060 KiB |
| prime_death04.txt | AC | 15 ms | 4932 KiB |
| prime_death05.txt | AC | 22 ms | 6160 KiB |
| prime_death06.txt | AC | 16 ms | 5448 KiB |
| prime_death07.txt | AC | 19 ms | 6088 KiB |
| prime_death08.txt | AC | 18 ms | 5508 KiB |
| prime_death09.txt | AC | 15 ms | 4684 KiB |
| prime_death10.txt | AC | 21 ms | 5580 KiB |
| superkiller_01.txt | AC | 29 ms | 6188 KiB |
| superkiller_02.txt | AC | 27 ms | 6332 KiB |
| superkiller_03.txt | AC | 28 ms | 6260 KiB |
| superkiller_04.txt | AC | 29 ms | 6248 KiB |
| superkiller_05.txt | AC | 33 ms | 6340 KiB |
| superkiller_06.txt | AC | 27 ms | 6328 KiB |
| superkiller_07.txt | AC | 32 ms | 6340 KiB |
| superkiller_08.txt | AC | 28 ms | 6264 KiB |
| superkiller_09.txt | AC | 29 ms | 6328 KiB |
| superkiller_10.txt | AC | 31 ms | 6248 KiB |
| three_01.txt | AC | 2 ms | 3596 KiB |
| three_02.txt | AC | 2 ms | 3492 KiB |
| three_03.txt | AC | 27 ms | 6364 KiB |
| three_04.txt | AC | 32 ms | 6428 KiB |
| two_01.txt | AC | 2 ms | 3632 KiB |
| two_02.txt | AC | 2 ms | 3488 KiB |
| two_03.txt | AC | 2 ms | 3472 KiB |
| two_04.txt | AC | 2 ms | 3628 KiB |
| two_05.txt | AC | 2 ms | 3552 KiB |
| two_06.txt | AC | 27 ms | 6268 KiB |
| two_07.txt | AC | 27 ms | 6200 KiB |
| two_08.txt | AC | 29 ms | 6336 KiB |
| zero_01.txt | AC | 21 ms | 6328 KiB |