※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※
이번에 볼 문제는 백준 16171번 문제인 나는 친구가 적다 (Small)이다.
문제는 아래 링크를 확인하자.
https://www.acmicpc.net/problem/16171
16171번: 나는 친구가 적다 (Small)
첫 번째 줄에는 알파벳 소문자, 대문자, 숫자로 이루어진 문자열 S가 주어진다. (1 ≤ |S| ≤ 100) 두 번째 줄에는 성민이가 찾고자 하는 알파벳 소문자, 대문자로만 이루어진 키워드 문자열 K가 주
www.acmicpc.net
주어지는 첫번째 문자열의 각 문자를 살펴보면서, 숫자인 문자, 즉 '0'이상 '9' 이하인 문자를 제외한 나머지 문자들을 순서대로 모은 새로운 문자열변수를 만들어 볼 수 있다.
새로 만든 문자열이 찾고자 하는 키워드를 부분문자열로 갖는지 살펴보는 것으로 문제를 해결하자.
아래는 제출한 소스코드이다.
#include <iostream>
#include <string>
using namespace std;
string s, ss, t;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
cin >> s >> t;
for (auto& l : s) {
if ('0' <= l && l <= '9') continue;
ss += l;
}
bool chk = 0;
int sslen = ss.length(), tlen = t.length();
for (int i = tlen; i <= sslen; i++) {
if (ss.substr(i - tlen, tlen) == t) chk = 1;
}
if (chk) cout << 1;
else cout << 0;
}
728x90
'BOJ' 카테고리의 다른 글
[BOJ 9782 // C++] Median (0) | 2023.02.14 |
---|---|
[BOJ 9783 // C++] Easy Encryption (0) | 2023.02.14 |
[BOJ 27465 // C++] 소수가 아닌 수 (0) | 2023.02.14 |
[BOJ 2346 // C++] 풍선 터뜨리기 (0) | 2023.02.14 |
[BOJ 2033 // C++] 반올림 (0) | 2023.02.13 |