문제 설명
문자열 text와 찾고자 하는 부분 문자열 pattern이 주어질 때, text에서 pattern이 처음으로 등장하는 인덱스를 반환하는 solution 함수를 작성하시오.
만약 pattern이 text에 존재하지 않는다면 -1을 반환합니다.
예를 들어, text가 "ABABDABACDABABCABAB"이고 pattern이 "ABABC"라면, "ABABC"는 인덱스 10에서 처음 등장하므로 10을 반환합니다.
제한 사항
text의 길이는 1 이상 10,000 이하입니다.pattern의 길이는 1 이상 1,000 이하입니다.text와pattern은 알파벳 대문자로만 구성됩니다.
예시 테스트케이스 설명
| 테스트케이스 번호 | text | pattern | return |
|---|---|---|---|
| 1 | "ABABDABACDABABCABAB" | "ABABC" | 10 |
| 2 | "HELLO" | "LL" | 2 |
| 3 | "ABCDEFG" | "XYZ" | -1 |
1번 테스트케이스 설명
"ABABDABACDABABCABAB"에서 "ABABC"는 인덱스 10에서 처음 등장합니다.
- 인덱스 0~4: "ABABD" (불일치)
- 인덱스 5~9: "ABACD" (불일치)
- 인덱스 10~14: "ABABC" (일치)
따라서 10을 반환합니다.
2번 테스트케이스 설명
"HELLO"에서 "LL"은 인덱스 2에서 처음 등장합니다.
- 인덱스 0~1: "HE" (불일치)
- 인덱스 1~2: "EL" (불일치)
- 인덱스 2~3: "LL" (일치)
따라서 2를 반환합니다.
3번 테스트케이스 설명
"ABCDEFG"에서 "XYZ"는 존재하지 않습니다. 따라서 -1을 반환합니다.