코딩테스트/백준 online Judge
[python] 백준 알고리즘 1543번 문서 검색, 리스트 슬라이싱을 활용한 풀이
polarcompass
2021. 11. 12. 20:41
728x90
https://www.acmicpc.net/problem/1543
1543번: 문서 검색
세준이는 영어로만 이루어진 어떤 문서를 검색하는 함수를 만들려고 한다. 이 함수는 어떤 단어가 총 몇 번 등장하는지 세려고 한다. 그러나, 세준이의 함수는 중복되어 세는 것은 빼고 세야 한
www.acmicpc.net
Q = input()
A = input()
cnt = 0
while Q:
if Q[:len(A)] == A:
cnt += 1
Q = Q[len(A):]
else:
Q = Q[1:]
print(cnt)
입력 예제
ababababa
aba
출력 예제
2
슬라이싱을 활용하여 풀어보았다.
while문 종료 조건을 Q가 '' 완전히 빌때까지로 놓았고,
앞부분부터 정답 문자열 길이만큼 슬리이싱한 부분이 A 정답과 같다면
count를 1개 더해주고, 정답 문자열 길이만큼 앞부분에서부터 슬라이싱하여
다시 Q 변수에 넣어주는 것을 반복해준다.
만약, 첫번째 조건에서 False가 나와서 else문으로 갈 경우
문자 1개씩 삭제하는 코드를 넣었다.
728x90