UOJ Logo

NOI.AC

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#203495#2817. 小明的计算tkswls1000ms1252kbC++11609b2024-02-26 08:44:052024-02-26 14:00:16

answer

#include <bits/stdc++.h>
#define int long long
using namespace std;
const int mod = 1000000007;
int n, m, ccnt, b[150005], ans = 1;
inline int ksm(int p, int q) {
	int base = 1;
	while (q) {
		if (q & 1) base = base * p % mod;
		p = p * p % mod;
		q >>= 1;
	}
	return base;
}
signed main() {
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	cin >> n >> m;
	for (int i = 2; i <= sqrt(n); i++) {
		int cnt = i;
		while (n % i == 0) {
			ans = ans * ksm(i, (m / cnt)) % mod;
			cnt = cnt * i;
			n /= i;
		}
	}
	if (n) {
		ans = ans * ksm(n, (m / n)) % mod;
	}
	cout << ans;
}

详细

小提示:点击横条可展开更详细的信息

Test #1:

score: 10
Accepted
time: 0ms
memory: 1248kb

input:

865987 941795


output:

852352201

result:

ok single line: '852352201'

Test #2:

score: 10
Accepted
time: 0ms
memory: 1252kb

input:

718079 336455


output:

866737698

result:

ok single line: '866737698'

Test #3:

score: 10
Accepted
time: 0ms
memory: 1248kb

input:

78100 231920


output:

148617020

result:

ok single line: '148617020'

Test #4:

score: 10
Accepted
time: 0ms
memory: 1248kb

input:

478780 349871


output:

627456355

result:

ok single line: '627456355'

Test #5:

score: 10
Accepted
time: 0ms
memory: 1248kb

input:

492436 177462


output:

710554997

result:

ok single line: '710554997'

Test #6:

score: 10
Accepted
time: 0ms
memory: 1252kb

input:

5498214 3423692


output:

754285740

result:

ok single line: '754285740'

Test #7:

score: 10
Accepted
time: 0ms
memory: 1248kb

input:

2257405 2442817


output:

509022777

result:

ok single line: '509022777'

Test #8:

score: 10
Accepted
time: 0ms
memory: 1252kb

input:

525133 3839557


output:

712423552

result:

ok single line: '712423552'

Test #9:

score: 10
Accepted
time: 0ms
memory: 1248kb

input:

559167069 414841373


output:

191742478

result:

ok single line: '191742478'

Test #10:

score: 10
Accepted
time: 0ms
memory: 1248kb

input:

64401879 171289385


output:

75367261

result:

ok single line: '75367261'