https://www.acmicpc.net/problem/5586
이 문제에서의 핵심은 substr 함수를 사용하는 것이다.
substr 함수는 다음과 같이 사용한다.
#include <string>
대상문자열.substr(시작위치, 몇글자볼건지);
이 문제에서는 "JOI", "IOI"를 찾아야 하기 때문에, 두번째 파라미터로 3을 넣어줘야 한다. 그리고 한번에 3글자를 검색하기 때문에, for문을 돌리는 범위도 맨 끝에서 3번째 글자까지만 돌리면 된다.
#include <iostream>
#include <string>
using namespace std;
int main() {
string s;
cin >> s;
int joi = 0, ioi = 0;
for (int i = 0; i < s.length() - 2; i++) {
if (s.substr(i, 3) == "IOI") ioi++;
else if (s.substr(i, 3) == "JOI") joi++;
}
cout << joi << "\n" << ioi << endl;
return 0;
}