728x90
SMALL
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);
}
}
사진에서 Po + B 로 정리를 한 식이 있다.
결론은 B가 어떠한 값이 와도 Po 값 하나로 h(P) (=즉, H, %M한 값)이 정해질 수 있어다는 것이다!!
결국은 %M으로 연산을 하고 Po의 범위는 0~M-1이니까 말이다!
즉 어떠한 H값이든 Po로 한 개의 값으로 만들 수 있으니 뒤에 올 수 있는 경우의 수만 구해주면 된다는 문제였던 것 같습니다..!
728x90
LIST
'Coding test > Baekjoon' 카테고리의 다른 글
[백준][JAVA] 10807번: 개수 세기 (0) | 2023.08.14 |
---|---|
[백준][JAVA] 1158번: 요세푸스 문제 (0) | 2023.08.12 |
[백준][JAVA] 10818번: 최소, 최대 (0) | 2023.08.09 |
[백준][JAVA] 1021번: 회전하는 큐 (0) | 2023.08.09 |
[백준][JAVA] 11053번: 가장 긴 증가하는 부분 수열 (0) | 2023.08.01 |