| Task: | Babaza Game |
| Sender: | aalto26am_039 |
| Submission time: | 2026-08-31 17:43:38 +0300 |
| Language: | C++ (C++20) |
| Status: | READY |
| Result: | ACCEPTED |
| test | verdict | time | |
|---|---|---|---|
| #1 | ACCEPTED | 0.00 s | details |
| #2 | ACCEPTED | 0.00 s | details |
| #3 | ACCEPTED | 0.00 s | details |
| #4 | ACCEPTED | 0.00 s | details |
| #5 | ACCEPTED | 0.00 s | details |
| #6 | ACCEPTED | 0.00 s | details |
| #7 | ACCEPTED | 0.00 s | details |
| #8 | ACCEPTED | 0.00 s | details |
| #9 | ACCEPTED | 0.00 s | details |
| #10 | ACCEPTED | 0.00 s | details |
| #11 | ACCEPTED | 0.00 s | details |
| #12 | ACCEPTED | 0.00 s | details |
| #13 | ACCEPTED | 0.00 s | details |
| #14 | ACCEPTED | 0.00 s | details |
Code
#include <iostream>
#include <string>
#include <vector>
using namespace std;
int main() {
string s, t;
cin >> s >> t;
int n = s.size();
bool one = true;
for (int i = 0; i + 1 < n; i++)
if (s[i] != t[i] && s[i + 1] != t[i + 1]) one = false;
if (one) { cout << s << "\n" << t << "\n"; return 0; }
vector<vector<int>> pr(n, vector<int>(26, -2));
for (int c = 0; c < 26; c++) pr[0][c] = -1;
for (int i = 1; i < n; i++)
for (int c = 0; c < 26; c++)
for (int p = 0; p < 26; p++) {
if (pr[i - 1][p] == -2 || p == c) continue;
if (p != s[i - 1] - 'A' && c != s[i] - 'A') continue;
if (p != t[i - 1] - 'A' && c != t[i] - 'A') continue;
pr[i][c] = p;
break;
}
for (int c = 0; c < 26; c++)
if (pr[n - 1][c] != -2) {
string u(n, '?');
for (int i = n - 1, x = c; i >= 0; i--) { u[i] = 'A' + x; x = pr[i][x]; }
cout << s << "\n" << u << "\n" << t << "\n";
return 0;
}
char x = 'A';
while (s.find(x) != string::npos || t.find(x) != string::npos) x++;
string a = s, b = t;
for (int i = 0; i < n; i += 2) a[i] = b[i] = x;
cout << s << "\n" << a << "\n" << b << "\n" << t << "\n";
}
Test details
Test 1
Verdict: ACCEPTED
| input |
|---|
| A B |
| correct output |
|---|
| A B |
| user output |
|---|
| A B |
Test 2
Verdict: ACCEPTED
| input |
|---|
| BABAZA BACBCB |
| correct output |
|---|
| BABAZA BACACA BACBCB |
| user output |
|---|
| BABAZA BACACA BACBCB |
Test 3
Verdict: ACCEPTED
| input |
|---|
| AB BA |
| correct output |
|---|
| AB CB CA BA |
| user output |
|---|
| AB CB CA BA |
Test 4
Verdict: ACCEPTED
| input |
|---|
| ABC BCD |
| correct output |
|---|
| ABC DBD DCD BCD |
| user output |
|---|
| ABC EBE ECE BCD |
Test 5
Verdict: ACCEPTED
| input |
|---|
| AXYB CXYD |
| correct output |
|---|
| AXYB CXYD |
| user output |
|---|
| AXYB CXYD |
Test 6
Verdict: ACCEPTED
| input |
|---|
| LMIJLF PAQBMH |
| correct output |
|---|
| LMIJLF PMQJMF PAQBMH |
| user output |
|---|
| LMIJLF PMQJMF PAQBMH |
Test 7
Verdict: ACCEPTED
| input |
|---|
| PNIWLSLIH CRLVPUFHD |
| correct output |
|---|
| PNIWLSLIH CNLWPSFID CRLVPUFHD |
| user output |
|---|
| PNIWLSLIH CNLWPSFID CRLVPUFHD |
Test 8
Verdict: ACCEPTED
| input |
|---|
| ZDYIAVTKL ZJKVXGAUM |
| correct output |
|---|
| ZDYIAVTKL ZJYVAGTUL ZJKVXGAUM |
| user output |
|---|
| ZDYIAVTKL ZJYVAGTUL ZJKVXGAUM |
Test 9
Verdict: ACCEPTED
| input |
|---|
| FBIXISJH NXZIESMG |
| correct output |
|---|
| FBIXISJH NBZXESMH NXZIESMG |
| user output |
|---|
| FBIXISJH NBZXESJG NXZIESMG |
Test 10
Verdict: ACCEPTED
| input |
|---|
| OPGW QJIE |
| correct output |
|---|
| OPGW QPIW QJIE |
| user output |
|---|
| OPGW OJGE QJIE |
Test 11
Verdict: ACCEPTED
| input |
|---|
| DUKNPKQZBL NZPBMOEBIC |
| correct output |
|---|
| DUKNPKQZBL NUPNMKEZIL NZPBMOEBIC |
| user output |
|---|
| DUKNPKQZBL NUPNMKEZIL NZPBMOEBIC |
Test 12
Verdict: ACCEPTED
| input |
|---|
| ZWDTX HZOXI |
| correct output |
|---|
| ZWDTX HWOTI HZOXI |
| user output |
|---|
| ZWDTX HWOTI HZOXI |
Test 13
Verdict: ACCEPTED
| input |
|---|
| URJF ITIQ |
| correct output |
|---|
| URJF IRIF ITIQ |
| user output |
|---|
| URJF IRIF ITIQ |
Test 14
Verdict: ACCEPTED
| input |
|---|
| WYWBWU IRYVBA |
| correct output |
|---|
| WYWBWU WRWVWA IRYVBA |
| user output |
|---|
| WYWBWU WRWVWA IRYVBA |
