ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JUNGOL...63
    일지 2021. 4. 23. 08:47

    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

     

    댓글

Designed by Tistory.