JUNGOL...63
Beginner_Coder/문자열/문자열 찾기
문제
주어진 문자열에서 연속 3개의 문자가 IOI 이거나 KOI인 문자열이 각각 몇 개 있는지 찾는 프로그램을 작성하라.
문자열은 알파벳의 대문자로만 이루어진다.
예를 들어 "KOIOIOI"라는 문자열은 KOI 1개 , IOI 2개가 포함되어있다.
입력 형식
입력은 한 줄이며 10,000자 이하의 알파벳 대문자로 구성된다.
출력 형식
출력은 2줄이며, 첫 번째 줄에는 KOI의 개수, 두 번째 줄에는 IOI의 개수를 각각 출력하라.
입력 예
KOIOIOI | KORKDIOIDXHKOIOIOIOPKOI
출력 예
1 | 2
2 | 3
FindString.h
#include <iostream>
#include <string>
using std::string;
FindString.cpp
void FindString::Code()
{
string str;
std::cin >> str;
int koiCount{ 0 }, ioiCount{ 0 };
for (int i = 0, count{ static_cast<int>(str.size()) }; i < count; i++)
{
if (str[i] == 'K' || str[i] == 'I')
{
if (str[i + 1] != 'O')
{
continue;
}
if (str[i + 2] == 'I')
{
if (str[i] == 'K')
{
koiCount++;
}
else
{
ioiCount++;
}
}
i++;
}
}
std::cout << koiCount << '\n';
std::cout << ioiCount;
}
실행 결과 Success(100)
NadanKim/CodingTest_JUNGOL: JUNGOL 코딩 테스트를 위한 저장소 (github.com)
NadanKim/CodingTest_JUNGOL
JUNGOL 코딩 테스트를 위한 저장소. Contribute to NadanKim/CodingTest_JUNGOL development by creating an account on GitHub.
github.com