你为什么不取模?
by Ew_Cors @ 2024-03-17 12:35:16
@[Ew_Cors](/user/180103) ```cpp
#include <iostream>
using namespace std;
#define mod 9901
typedef long long ll;
int qmi(int m, int k)
{
int res = 1 % mod, t = m;
while (k)
{
if (k&1) res = res * t % mod;
t = t * t % mod;
k >>= 1;
}
return res % mod;
}
int main()
{
ll sums = 0;
ll a, b;
cin >> a >> b;
ll res = qmi(a,b);
for(int j = 1; j <= res / j; j++)
{
if(res % j == 0)
{
sums += j;
if(res != j * j) sums += res /j;
}
}
cout << sums % 9901;
}
```
by hope_echo @ 2024-03-18 16:21:03
@[Ew_Cors](/user/180103)
```cpp
#include <iostream>
using namespace std;
#define mod 9901
typedef long long ll;
int qmi(int m, int k)
{
int res = 1 % mod, t = m;
while (k)
{
if (k&1) res = res * t % mod;
t = t * t % mod;
k >>= 1;
}
return res % mod;
}
int main()
{
ll sums = 0;
ll a, b;
cin >> a >> b;
ll res = qmi(a,b);
for(int j = 1; j <= res / j; j++)
{
if(res % j == 0)
{
sums += j;
if(res != j * j) sums += res /j;
}
}
cout << sums % 9901;
}
```
by hope_echo @ 2024-03-18 16:21:56
@[Ew_Cors](/user/180103)
取了还是错
by hope_echo @ 2024-03-18 16:22:31
@[lxk20020629](/user/1018012) 加9901再取模排除ans<0
by _TCR_ @ 2024-03-24 10:11:14