반응형
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
string abc[3] = {
"ABCEFG",
"HIJKLM",
"NOPQRS"
};
string result[3] = {
"ABCEFG",
"HIJKLM",
"NOPQRS"
};
string inputabc;
int direct[5][2] = {
{0,-1}, {0,1}, {1,0}, {-1,0}, {0,0}
};
void flip(char a) {
int ay, ax;
for (int i = 0; i < 3;i++) {
for (int j = 0; j < 6;j++) {
if (a == abc[i][j]) {
ay = i;
ax = j;
}
}
}
for (int i = 0; i < 5;i++) {
int dy, dx;
dy = ay + direct[i][0];
dx = ax + direct[i][1];
if (dy >= 0 && dy < 3 && dx >= 0 && dx < 6) {
if (result[dy][dx] == '#') {
result[dy][dx] = abc[dy][dx];
}
else {
result[dy][dx] = '#';
}
}
}
}
int main() {
cin >> inputabc;
int len = inputabc.length();
for (int i = 0; i < len;i++) {
flip(inputabc[i]);
}
for (int i = 0; i < 3;i++) {
cout << result[i] << endl;
}
}
입력 예제
BE
출력 결과
##C##G H#J#LM NOPQRS
반응형
'C언어 > 문제풀다 하나씩' 카테고리의 다른 글
binary search 구현 (0) | 2020.05.23 |
---|---|
Binary Search Tree 구현해보기 search함수 (0) | 2020.05.22 |
setUnion 과 findboss해보기 - UNIONFIND (0) | 2020.05.22 |
배열 회전시키기 (0) | 2020.05.22 |
?B?? 같이 문자열 내 문자 같은지 확인 (0) | 2020.05.22 |
문자열 내 빈도수 이용해서 문제풀기 (0) | 2020.05.21 |
투표한 시민 알아보기 (0) | 2020.05.21 |
연속 3개 모이면 터지면서 없어지기 - pushback popback 쓰기 (0) | 2020.05.16 |