티스토리 뷰
728x90
https://www.acmicpc.net/problem/1120
- 해설 :
문자열 A와 B가 주어졌을 때 A의 앞이나 뒤에 아무 글자나 붙일 수 있다고 가정하고 B랑 차이가 최소인 문자열을 만드려고 한다. 만들 수 있는 A와 B의 차잇값중 최소를 출력하는 문제이다.
- 풀이 :
쉬운 문제이다.
A의 길이가 B보다 같거나 작으므로 B에서 0번부터 len(B)-len(A)+1만큼 문자열을 잘라주면서 A와의 차이를 구하면 된다. 이 값들의 최소가 만들 수 있는 A와 B의 차이 중 최소이다.
- 소스코드 :
1 2 3 4 5 6 7 8 9 10 11 12 | A,B = input().split() A=list(A) B=list(B) l = len(A) ans = 100000000 for i in range(len(B)-l+1): c = 0 for j in range(l): if A[j] != B[i:i+l][j]: c += 1 ans = min(ans,c) print(ans) | cs |
320x100
'Algorithm > String' 카테고리의 다른 글
(Python/파이썬) - 백준(BOJ) 1316번 : 그룹 단어 체커 (0) | 2022.04.14 |
---|---|
(Python) - BOJ(1032번) : 명령 프롬프트 (0) | 2022.03.02 |
(Python) - BOJ(2607번) : 비슷한 단어 (0) | 2022.02.18 |
(Python) - BOJ(18870번) : 좌표 압축 (0) | 2022.02.16 |
(C++) - BOJ(1427번) : 소트인사이드 (0) | 2022.01.26 |
댓글
© 2022 WonSeok, All rights reserved