아이디어
- string.find(target)함수를 활용한다. (string: 탐색할 문자열, target: 포함되어 있는지 확인할 문자열)
- target이 string에 포함되어 있다면 target이 시작되는 위치의 인덱스를
- 그렇지 않으면 -1을 반환한다.
- target이 몇개나 들어있는지 세는 변수 cnt를 0으로 초기화한다.
- string.find(target)이 -1이라면 cnt를 출력하고
- 그렇지 않으면 cnt를 1 증가시킨다.
- string을 target이 포함된 부분의 뒷부분으로 업데이트한다.
코드
for i in range(1, 11):
# 테스트케이스의 번호.
# for문의 i를 이용할 거라 그냥 입력만 받고 저장하지 않았다.
int(input())
target = input()
s = input()
cnt = 0
while len(s)>=len(target):
idx = s.find(target)
if idx==-1:
break
else:
cnt +=1
s = s[idx+len(target):]
print("#%d %d" %(i, cnt))
'[SWEA] - Python' 카테고리의 다른 글
[SWEA] 1244 : [S/W 문제해결 응용] 2일차 - 최대 상금 python (0) | 2023.11.17 |
---|---|
[SWEA/D3] 5215 : 햄버거 다이어트 python (0) | 2023.11.17 |
[SWEA] 1206 : [S/W 문제해결 기본] 1일차 - View python (0) | 2023.10.01 |
[SWEA/D3] 16800 : 구구단 걷기 python (0) | 2023.09.09 |
[SWEA/D4] 2819 : 격자판의 숫자 이어 붙이기 python (0) | 2023.09.09 |