반응형
리뷰
문자열 find를 통해 문제를 풀었다.
문제 풀이
- 문자열을 받아오고 joi와 ioi의 개수를 카운트할 정수 변수를 0으로 초기화 해준다.
- 먼저 문자열에서 JOI가 위치한 인덱스를 pos변수에 저장하고 만약 pos가 문자열의 끝이 아니라면 while루프를 시작하여 joi개수를 증가시키고 다음 joi위치를 pos 변수에 최신화 해준다.
- IOI 역시 JOI와 마찬가지로 최신화 해준 뒤 while루프를 돈다.
- JOI의 개수와 IOI개수를 출력해 준다.
참고 사항
없음
정답 코드
#include <iostream>
#include <string>
using namespace std;
int main() {
string s;
cin >> s;
int joi = 0, ioi = 0;
int pos = s.find("JOI");
while (pos != s.npos) {
joi++;
pos = s.find("JOI", pos + 1);
}
pos = s.find("IOI");
while (pos != s.npos) {
ioi++;
pos = s.find("IOI", pos + 1);
}
cout << joi << "\n" << ioi;
}
728x90
반응형
'알고리즘 공부 > C++' 카테고리의 다른 글
백준 5656번 비교 연산자 C++ (0) | 2024.07.21 |
---|---|
백준 2702번 초6 수학 C++ (0) | 2024.07.21 |
백준 2774번 아름다운 수 C++ (0) | 2024.07.21 |
백준 11575번 Affine Cipher C++ (0) | 2024.07.21 |
백준 9243번 파일 완전 삭제 C++ (0) | 2024.07.21 |