본문 바로가기
Algorithms/simulation

1213 String

by OKOK 2018. 10. 26.

주어지는 영어 문자 특정한 문자열의 개수를 반환하는 프로그램을 작성.

 

제약 사항

총 10개 테케

문장의 길이 1000자를 넘어가지 않음

한 문장에서 검색하는 문자열의 길이는 최대 10을 넘지 않음.

한 문장에서 하나의 문자열만 검색함.

 

입력

각 테케 첫 줄에는 테케 번호가 주어지고, 가 다음 줄에는 찾을 문자열, 그 다음 줄에는 검색할 문장이 주어짐

 

출력

부호와 함께 테케 번호를 출력하고, 공백 문자 후 테케 답을 출력함. 

#include <cstdio> //  stdio 랑 차이없음
#include <cstring>
using namespace std;

char target[12], input[1002]; // 검색하는 문자열, 들어오는 문자열
int tLen, iLen, cnt, t, TC = 10; //

int main()
{
    while (TC--) // 테케 
    {
        scanf("%d", &t); // 테케 넘버
        scanf("%s %s", &target, &input); // 타켓을 받고, 인풋을 받고
        tLen = strlen(target); // 타켓의 길이
        iLen = strlen(input); // 인풋의 길이
        cnt = 0; // 수자 셈

        for (int i = 0; i <= iLen - tLen; i++) // 인풋의 길에어서 타겟의 길이르 ㄹ뻄
        {
            bool isSame = true; // 같은지 새임
            for (int j = 0; j<tLen; j++) // 제이는 0부터 타겟의 길이만큼
                if (input[i + j] != target[j]) // 인풋의 아이 + 제이와 타겟의 제이를 비교합니다.
                {
                    isSame = false;
                    break;
                }
            if (isSame) cnt++; // 같으면 숫자를 ++ 해줌
        }

        printf("#%d %d\n", t, cnt);
    }

    return 0;
}

'Algorithms > simulation' 카테고리의 다른 글

1222 계산기1  (0) 2018.10.26
1217 거듭 제곱  (0) 2018.10.26
1209 Sum  (0) 2018.10.26
1206 View  (0) 2018.10.26
1208 Flatten  (0) 2018.10.26

댓글