Pagini recente » Diferente pentru implica-te/arhiva-educationala intre reviziile 119 si 118 | Cod sursa (job #1626406) | Cod sursa (job #1510556) | Cod sursa (job #477664) | Cod sursa (job #2460080)
#include <fstream>
#define ll long long
#define mod 9901
using namespace std;
ifstream f("sumdiv.in");
ofstream g("sumdiv.out");
ll a, b;
ll logpow(ll a, ll b)
{
ll r = 1;
while(b)
{
if(b & 1)
r = (r * a) % mod;
b /= 2;
a *= a;
a %= mod;
}
return r;
}
int main()
{
f >> a >> b;
ll ans;
ans = logpow(a, b + 1);
ans = ans - 1 + mod;
ans %= mod;
ans = (ans * logpow(a - 1, mod - 1)) % mod;
g << ans;
f.close();
g.close();
}