This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <iostream>
using namespace std;
string s1,s2,s3,s4,s5,s6,s7,s8,s9;
int main(){
int n; cin >> n;
cin >> s1 >> s2 >> s3;
for (int i = 0; i < n; ++i){
if (s1[i] == s2[i]){
s4 += s1[i];
} else{
if ((s1[i] == 'J' && s2[i] == 'O')||(s1[i] == 'O' && s2[i] == 'J')){
s4 += 'I';
}
if ((s1[i] == 'J' && s2[i] == 'I')||(s1[i] == 'I' && s2[i] == 'J')){
s4 += 'O';
}
if ((s1[i] == 'I' && s2[i] == 'O')||(s1[i] == 'O' && s2[i] == 'I')){
s4 += 'J';
}
}
}
for (int i = 0; i < n; ++i){
if (s1[i] == s3[i]){
s5 += s1[i];
} else{
if ((s1[i] == 'J' && s3[i] == 'O')||(s1[i] == 'O' && s3[i] == 'J')){
s5 += 'I';
}
if ((s1[i] == 'J' && s3[i] == 'I')||(s1[i] == 'I' && s3[i] == 'J')){
s5 += 'O';
}
if ((s1[i] == 'I' && s3[i] == 'O')||(s1[i] == 'O' && s3[i] == 'I')){
s5 += 'J';
}
}
}
for (int i = 0; i < n; ++i){
if (s3[i] == s2[i]){
s6 += s3[i];
} else{
if ((s3[i] == 'J' && s2[i] == 'O')||(s3[i] == 'O' && s2[i] == 'J')){
s6 += 'I';
}
if ((s3[i] == 'J' && s2[i] == 'I')||(s3[i] == 'I' && s2[i] == 'J')){
s6 += 'O';
}
if ((s3[i] == 'I' && s2[i] == 'O')||(s3[i] == 'O' && s2[i] == 'I')){
s6 += 'J';
}
}
}
for (int i = 0; i < n; ++i){
if (s1[i] == s6[i]){
s7 += s1[i];
} else{
if ((s1[i] == 'J' && s6[i] == 'O')||(s1[i] == 'O' && s6[i] == 'J')){
s7 += 'I';
}
if ((s1[i] == 'J' && s6[i] == 'I')||(s1[i] == 'I' && s6[i] == 'J')){
s7 += 'O';
}
if ((s1[i] == 'I' && s6[i] == 'O')||(s1[i] == 'O' && s6[i] == 'I')){
s7 += 'J';
}
}
}
for (int i = 0; i < n; ++i){
if (s5[i] == s2[i]){
s8 += s5[i];
} else{
if ((s5[i] == 'J' && s2[i] == 'O')||(s5[i] == 'O' && s2[i] == 'J')){
s8 += 'I';
}
if ((s5[i] == 'J' && s2[i] == 'I')||(s5[i] == 'I' && s2[i] == 'J')){
s8 += 'O';
}
if ((s5[i] == 'I' && s2[i] == 'O')||(s5[i] == 'O' && s2[i] == 'I')){
s8 += 'J';
}
}
}
for (int i = 0; i < n; ++i){
if (s3[i] == s4[i]){
s9 += s3[i];
} else{
if ((s3[i] == 'J' && s4[i] == 'O')||(s3[i] == 'O' && s4[i] == 'J')){
s9 += 'I';
}
if ((s3[i] == 'J' && s4[i] == 'I')||(s3[i] == 'I' && s4[i] == 'J')){
s9 += 'O';
}
if ((s3[i] == 'I' && s4[i] == 'O')||(s3[i] == 'O' && s4[i] == 'I')){
s9 += 'J';
}
}
}
int q; cin >> q;
string ej; cin >> ej;
if (ej == s1 || ej == s2 || ej == s3|| ej == s4|| ej == s5|| ej == s6|| ej == s7|| ej == s8|| ej == s9){
cout << "Yes" << endl;
} else{
cout << "No" << endl;
}
for (int i = 0; i < q; ++i){
int l, r; cin >> l >> r;
char c; cin >> c;
for (int i = l-1; i < r; ++i){
ej[i] = c;
}
if (ej == s1 || ej == s2 || ej == s3|| ej == s4|| ej == s5|| ej == s6|| ej == s7|| ej == s8|| ej == s9){
cout << "Yes" << endl;
} else{
cout << "No" << endl;
}
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |