아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Primes and Multiplication

시간 제한1초메모리 제한1024 MB

요약
x의 각 소인수 p에 대해 i를 나누는 가장 큰 p의 거듭제곱을 구하고, i가 1부터 n까지일 때 그 값들을 모두 곱한 결과를 출력한다.
난이도

보통10점 중 7점

유형
정수론, 수학
정답자
아직 제출이 없습니다

문제

Let's introduce some definitions that will be needed later.

Let prime(x)prime(x) be the set of prime divisors of xx. For example, prime(140)=2,5,7prime(140) = \\{ 2, 5, 7 \\}, prime(169)=13prime(169) = \\{ 13 \\}.

Let g(x,p)g(x, p) be the maximum possible integer pkp^k where kk is an integer such that xx is divisible by pkp^k. For example:

  • g(45,3)=9g(45, 3) = 9 (4545 is divisible by 32=93^2=9 but not divisible by 33=273^3=27),
  • g(63,7)=7g(63, 7) = 7 (6363 is divisible by 71=77^1=7 but not divisible by 72=497^2=49).

Let f(x,y)f(x, y) be the product of g(y,p)g(y, p) for all pp in prime(x)prime(x). For example:

  • f(30,70)=g(70,2)⋅g(70,3)⋅g(70,5)=21⋅30⋅51=10f(30, 70) = g(70, 2) \cdot g(70, 3) \cdot g(70, 5) = 2^1 \cdot 3^0 \cdot 5^1 = 10,
  • f(525,63)=g(63,3)⋅g(63,5)⋅g(63,7)=32⋅50⋅71=63f(525, 63) = g(63, 3) \cdot g(63, 5) \cdot g(63, 7) = 3^2 \cdot 5^0 \cdot 7^1 = 63.

You have integers xx and nn. Calculate f(x,1)⋅f(x,2)⋅…⋅f(x,n) mod (109+7)f(x, 1) \cdot f(x, 2) \cdot \ldots \cdot f(x, n) \bmod{(10^{9} + 7)}.

입력

The only line contains integers xx and nn (2≤x≤1092 \le x \le 10^{9}, 1≤n≤10181 \le n \le 10^{18}) --- the numbers used in formula.

출력

Print the answer.

힌트

In the first example, f(10,1)=g(1,2)⋅g(1,5)=1f(10, 1) = g(1, 2) \cdot g(1, 5) = 1, f(10,2)=g(2,2)⋅g(2,5)=2f(10, 2) = g(2, 2) \cdot g(2, 5) = 2.

In the second example, actual value of formula is approximately 1.597⋅101711.597 \cdot 10^{171}. Make sure you print the answer modulo (109+7)(10^{9} + 7).

In the third example, be careful about overflow issue.

예제3

  1. 예제 1

    입력
    10 2
    
    예상 출력
    2
    
  2. 예제 2

    입력
    20190929 1605
    
    예상 출력
    363165664
    
  3. 예제 3

    입력
    947 987654321987654321
    
    예상 출력
    593574252