[ 목차 ]
📢 문제 출처
26008번: 해시 해킹
첫째 줄에 비밀번호의 길이 $N$과 문자 종류의 개수 $M$, 정수 $A$가 주어진다. ($1 \le N, M, A \le 5\,000\,000$) 둘째 줄에 재현이가 알아낸 해시값 정수 $H$가 주어진다. ($0 \le H < M$)
www.acmicpc.net
📢 문제 설명
📢 입출력 예시
📢 풀이
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
long answer = 1L;
int n = sc.nextInt();
int m = sc.nextInt();
int a = sc.nextInt();
int h = sc.nextInt();
for(int i = 0; i < n-1; i ++){
answer = (answer * m)%1000000007;
}
System.out.println(answer);
}
}
📢 문제 풀이(!?)
📢 참고 사이트
롤링 해시의 균일한 해시 값 분배 가능성 - 26008번: 해시 해킹
처음 작성했을때와 결론이 달라졌습니다. 마지막 섹션에 새로운 내용을 업데이트 했습니다. 제목을 이렇게 붙이니 오랜만에 논문을 작성하는 기분이다. 이 글은 백준 26008번: 해시 해킹에 대한
gukin.tistory.com
[백준] 26008 해시해킹
문제 입력 출력 코드( python ) n,m,a = map(int, input().split()) print(pow(m, n-1, 1000000007)) 코드( java ) import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); long answer = 1L; in
nukoori.tistory.com
반응형
댓글