코드

l = int(input())
word = list(input())

# r, M은 서로소
M = 1234567891
r = 31

# 입력받은 문자열을 숫자로 변환
num_list = list(map(lambda x: ord(x)-96, word))

# 해시 값을 담을 변수
h_tot = 0

for i in range(len(word)):
    h_tot += num_list[i] * (r ** i)
    
print(h_tot % M)

문제 해설

지문을 파악하는 것 이외에는 별 다른 어려움 없이 풀 수 있는 문제이다.

댓글남기기