250x250
반응형
Notice
Recent Posts
Recent Comments
Link
N
(SWEA c++)4047. 영준이의 카드 카운팅 본문
728x90
반응형
어려운 규칙 없이 하드 코딩을 하면 쉽게 풀 수 있는 문제.
4가지 모양의 14 크기의 bool형 벡터를 만들어 카드를 체크해준다.
만약 해당 모양의 숫자가 true이면 "ERROR"를 출력하고,
아니라면 true로 바꿔주고 카운팅을 -1 해주면 된다.
#include <iostream>
#include <vector>
#include <string>
using namespace std;
int main(void)
{
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
int t;
cin >> t;
for(int tc = 1; tc <= t; tc++)
{
vector<bool> S(14, false), D(14, false), H(14, false), C(14, false);
string s;
bool check = false;
int sC = 13, dC = 13, hC = 13, cC = 13;
cin >> s;
for(int i = 0; i < s.size(); i += 3)
{
string card = s.substr(i, 3);
int num = stoi(s.substr(i + 1, 2));
if(card[0] == 'S')
{
if(S[num])
{
check = true;
break;
}
S[num] = true;
sC--;
}
else if(card[0] == 'D')
{
if(D[num])
{
check = true;
break;
}
D[num] = true;
dC--;
}
else if(card[0] == 'H')
{
if(H[num])
{
check = true;
break;
}
H[num] = true;
hC--;
}
else
{
if(C[num])
{
check = true;
break;
}
C[num] = true;
cC--;
}
}
cout << "#" << tc << " ";
if(check)
cout << "ERROR" << endl;
else
cout << sC << " " << dC << " " << hC << " " << cC << endl;
}
return 0;
}
728x90
반응형
'SW Expert Academy' 카테고리의 다른 글
(SWEA c++)4371. 항구에 들어오는 배 (0) | 2020.11.10 |
---|---|
(SWEA c++)4299. 태혁이의 사랑은 타이밍 (0) | 2020.11.10 |
(SWEA c++)3975. 승률 비교하기 (0) | 2020.11.09 |
(SWEA c++)3809. 화섭이의 정수 나열 (0) | 2020.11.09 |
(SWEA c++)3750. Digit sum (0) | 2020.11.09 |