[백준 2804번 문제 링크] https://www.acmicpc.net/problem/2804
문제설명) 두 단어 a,b 가 있는다. a는 가로, b는 세로 놓이고 하나의 같은 문자로 크로스된다.
예)
입력)
a = abba, b=ccbb
출력)
.c..
.c..
abba
.b..
#include <iostream>
#include <string>
using namespace std;
int main() {
string a, b;
int ia, ib;
bool check = false;
cin >> a >> b;
//문자열 A의 문자를 기준으로 문자열 B의 같은 문자 찾기
for (int i = 0; i < a.size(); i++) {
for (int j = 0; j < b.size(); j++) {
if (a[i] == b[j]) {
ia = i;
ib = j;
//처음 같은 문자일때 불리언값으로 탈출시킴
check = true;
break;
}
}
if (check) break;
}
//출력, 문자열A길이는 가로, 문자열B길이는 세로
for (int i = 0; i < b.size(); i++) {
for (int j = 0; j < a.size(); j++) {
if (i == ib) {
cout << a;
break;
}
if (j == ia) {
cout << b[i];
continue;
}
cout << ".";
}
cout << "\n";
}
system("pause");
return 0;
}