문제 링크
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWLL7kaaAPsDFAUW
C++ 풀이
#include <string>
#include <vector>
#include <iostream>
using namespace std;
int main() {
string S, temp, answer;
vector <char> keypad = { 'Z', 'c', 'f', 'i', 'l', 'o', 's', 'v', 'z' };
int T, N, sum, check;
cin >> T;
for (int i = 1; i <= T; i++) {
sum = 0;
cin >> S >> N;
for (int j = 0; j < N; j++) {
check = 0;
cin >> temp;
if (temp.length() != S.length())
continue;
for (int k = 0; k < temp.length(); k++) {
if (((int)temp[k] > (int)keypad[S[k] - 50]) && (int)temp[k] <= (int)keypad[S[k] - 49])
check++;
}
if (check == S.length())
sum++;
}
answer += "#" + to_string(i) + " " + to_string(sum) + "\n";
}
cout << answer;
return 0;
}
문자를 int형으로 변환하여 값을 비교하여 풀었다.
반응형
'알고리즘 · 코딩' 카테고리의 다른 글
[SWEA 6730] 장애물 경주 난이도 (0) | 2020.06.08 |
---|---|
[SWEA 4751] 다솔이의 다이아몬드 장식 (0) | 2020.06.05 |
[SWEA 8658] Summation (0) | 2020.06.03 |
[SWEA 8821] 적고 지우기 (0) | 2020.06.02 |
[SWEA 1861] 정사각형 방 (0) | 2020.05.27 |