반응형
https://www.acmicpc.net/problem/16171
16171번: 나는 친구가 적다 (Small)
첫 번째 줄에는 알파벳 소문자, 대문자, 숫자로 이루어진 문자열 S가 주어진다. (1 ≤ |S| ≤ 100) 두 번째 줄에는 성민이가 찾고자 하는 알파벳 소문자, 대문자로만 이루어진 키워드 문자열 K가 주
www.acmicpc.net
구현, 문자열 문제였습니다.
📕 풀이방법
📔 입력 및 초기화
문자열 s, k를 선언 후 입력받습니다. '0' ~ '9'까지 문자열 제거를 위한 map 변수 filteringMap을 선언 후 값을 저장해줍니다.
📔 풀이과정
'0' ~ '9'까지의 문자를 제거해 원래 문자열을 반환하는 함수 getFilteredString을 수행합니다. 수행 뒤 반환값은 s에 다시 저장합니다.
📔 정답출력
find함수를 수행해 s안에 k가 있다면 1을 그렇지 않다면 0을 출력합니다.
📕 Code
#include <bits/stdc++.h>
using namespace std;
string s, k;
map <char, int> filteringMap;
string getFilteredString(){
string filteredString;
for(int i = 0; i < s.size(); i++)
if(!filteringMap[s[i]])
filteredString += s[i];
return filteredString;
}
int main(){
cin >> s >> k;
for(int i = 0; i <= 9; i++) filteringMap[i + '0'] = 1;
s = getFilteredString();
if(s.find(k) != string::npos) cout << 1;
else cout << 0;
}
'Algorithm > Implementation' 카테고리의 다른 글
(C++) - 백준(BOJ) 11637 : 인기 투표 (0) | 2022.04.24 |
---|---|
(C++) - 백준(BOJ) 14491 : 9진수 (0) | 2022.04.23 |
(C++) - 백준(BOJ) 14582 : 오늘도 졌다 (0) | 2022.04.12 |
(C++) - 백준(BOJ) 4659 : 비밀번호 발음하기 (0) | 2022.04.10 |
(C++) - 백준(BOJ) 24883 : 자동완성 (0) | 2022.04.08 |