728x90
<문제 링크>
https://www.acmicpc.net/problem/15829
<문제 풀이>
- 아스키코드를 정수로(ord), 정수를 아스키코드로(chr) 변환하는 함수 사용
- 문제에 나와있는 공식대로 코딩
<코드>
'''
5
abcde
3
zzz
1
i
'''
import sys
input_data = sys.stdin.readline().rstrip()
L = int(input_data.split()[0])
S = input_data.split()[1]
hash = dict()
for idx, i in enumerate(range(ord('a'),ord('z')+1)):
hash[chr(i)] = idx+1
r = 31
sum_ = 0
for idx,i in enumerate(S):
sum_ += hash[i] * (r**idx)
print(sum_ % 1234567891)
<고쳐야 할 점>
- 문제 꼼꼼히 읽기
'두두의 알고리즘 > 문제' 카테고리의 다른 글
[해시] 프로그래머스 L2 '전화번호 목록' (Python) (0) | 2021.11.23 |
---|---|
[해시] 프로그래머스 L1 '완주하지 못한 선수' (Python) (0) | 2021.11.23 |
[진법변환] 프로그래머스 L1 '비밀지도' (Python) (0) | 2021.11.23 |
[진법변환] 백준 2745번 '진법 변환' (Python) (0) | 2021.11.23 |
[진법변환] 백준 5692번 '팩토리얼 진법' (Python) (0) | 2021.11.23 |