[백준] 15482 한글 LCS (파이썬)
파이썬/코딩테스트2023. 11. 2. 20:00
https://www.acmicpc.net/problem/15482
a, b = input(), input()
dp = [[0 for _ in range(len(b)+1)]
for _ in range(len(a)+1)]
for i in range(1, len(a)+1):
for j in range(1, len(b)+1):
if a[i-1] == b[j-1]:
dp[i][j] = dp[i-1][j-1]+1
else:
dp[i][j] = max(dp[i-1][j], dp[i][j-1])
print(dp[-1][-1])
놀랍게도 파이썬에서는 아무런 처리 없이 그냥 LCS를 돌리면 된다.
import sys
if 'utf-8' != sys.stdin.encoding:
raise Exception
# 로컬 환경은 다를 수 있지만
# 백준 python3 환경은 utf-8
# 백준 pypy3 환경은 utf-8이 아닌 무언가
print(sys.getdefaultencoding())
print(sys.stdin.encoding)
print(sys.stdout.encoding)
# 인코딩을 확인하는 방법은 위와 같고
sys.stdin.reconfigure(encoding='utf-8')
sys.stdout.reconfigure(encoding='utf-8')
# 인코딩을 변경하는 방법은 위와 같다.
# python, pypy 둘 다 전부 주석 처리 해도 답 처리 된다.
# 출제자가 의도한 풀이는 유니코드를 3자리씩 끊어서 비교하기인 듯하다.
# C와 달리 파이썬에서는 1글자로 처리되는 듯하다.
이정도 정보는 확인해두면 좋을 듯하다.
'파이썬 > 코딩테스트' 카테고리의 다른 글
[백준] 17896 Meow Factor 2 (파이썬), 정규 표현식 (0) | 2023.11.06 |
---|---|
[백준] 19818 LaTeX Expert (파이썬), 정규 표현식 (0) | 2023.11.04 |
[백준] 5345 PLU Count (파이썬), 정규 표현식 (0) | 2023.11.01 |
[백준] 22973 점프 숨바꼭질 (파이썬) (0) | 2023.10.19 |
[백준] 1987 알파벳 (파이썬), 시간 초과 해결하는 법 (0) | 2023.10.14 |
댓글()