728x90
풀이
힌트를 보면 쉽게 이해할 수 있다.
단, long long 데이터 형식의 범위를 초과하는 것을 방지하기 위해 중간 계산과정에서 MOD로 나눈 나머지를 저장했다.
소스코드
#include <stdio.h>
#define MOD 1234567891
int main(){
char str[51];
long long result = 0, r = 1;
int L;
scanf("%d %s", &L, str);
for (int i = 0; i < L; i++){
result = (result + (str[i]-'a'+1) * r) % MOD;
r = (r*31) % MOD;
}
printf("%lld", result);
}
출처
728x90
'PS > Baekjoon Online Judge' 카테고리의 다른 글
[백준 2869] 달팽이는 올라가고 싶다 [C] (0) | 2021.07.27 |
---|---|
[백준 2839] 설탕 배달 [C] (0) | 2021.07.25 |
[백준 2775] 부녀회장이 될테야 [C] (0) | 2021.07.25 |
[백준 2231] 분해합 [C] (0) | 2021.07.25 |
[백준 11866] 요세푸스 문제 0 [C++] (0) | 2021.07.25 |