이문제는
3가지 조건을 만족하는 문자열인지를 판단하는 문제로
상대적으로 난이도가 그렇게 어렵지 않았던 문제이다.
조건
1. 길이가 7
2. 문자 종류가 2가지
3. 커맨드 순서가 AABBABB
처음에는 2번조건이 testcase3 처럼 문자열이 2종류 이상만 고려했다가
모두가 다 같은 경우를 고려하지 못하고 틀렸었다.
그래서 문자열을 비교하는 조건중에서 맨 마지막인 조건
0번 index와 6번 index 문자열이 달라야하는 조건을 통해
2번조건을 지킬 수 있었다.
#include<iostream>
using namespace std;
int CorrectCommand(string strTmp)
{
if(strTmp.length() != 7)
return 0;
if( strTmp[0] == strTmp[1] &&
strTmp[0] == strTmp[4] &&
strTmp[6] == strTmp[2] &&
strTmp[6] == strTmp[3] &&
strTmp[6] == strTmp[5] &&
strTmp[0] != strTmp[6])
{
return 1;
}
else
{
return 0;
}
}
int main (void)
{
int nT = 0;
cin >> nT;
for(int t = 0; t < nT; t++)
{
string strTmp;
cin >> strTmp;
cout << CorrectCommand(strTmp) << endl;
}
return 0;
}
'알고리즘' 카테고리의 다른 글
[백준 1911] 흙길 보수하기 (0) | 2020.10.14 |
---|---|
[백준 17938] 퐁당퐁당2 (0) | 2020.10.03 |
[백준 2578] 빙고 (0) | 2020.09.27 |
[백준 11048] 이동하기 (0) | 2020.09.21 |
[백준 15903] 카드 합체 놀이 (0) | 2020.09.21 |