[백준 5218] 알파벳 거리 / 파이썬

권한·2025년 12월 24일

BOJ

목록 보기
14/40

각 자리의 알파벳끼리의 거리를 출력하는 문제이다.
'B'와 'D'의 경우 거리는 4 - 2 = 2, 'D'와 'B'의 경우 (2 + 26) - 4 = 24이다.

알파벳은 뒤로 갈수록 숫자(아스키코드)가 큰 값을 가진다.
거리는 (뒤의 문자) - (앞의 문자)로 구하고 앞의문자가 뒤의 문자보다 큰 경우 뒷 문자에 +26을 해주면 되겠다.

for _ in range(int(input())):
    str1, str2 = input().split()
    print("Distances:", end = "")
    for i in range(len(str1)):
        p1, p2 = ord(str1[i]), ord(str2[i])
        if p2 < p1:
            p2 += 26
        d = p2 - p1
        print(f" d", end = "")
    print()
profile
티스토리로 옮김

0개의 댓글