Pagini recente » Cod sursa (job #2148604) | Cod sursa (job #1447860) | Cod sursa (job #2206950) | Cod sursa (job #3154159) | Cod sursa (job #1976522)
#include <fstream>
#include <stdint.h>
#define mod 1999999973;
using namespace std;
fstream f1("lgput.in", ios::in);
fstream f2("lgput.out", ios::out);
uint64_t sol=1, var;
int32_t n, p;
int main()
{
//n^p, descompui pe p= 2^(i1)+ 2^(i2)+...+2^(ik)
//la sol adaugi prin inmultire n^(2^i), unde 2^i face parte din numarul p
f1>>n>>p;
var=n;///n^2^0
int16_t i;
for(i=0; (1<<i)<=p; i++)
{
if((p& (1<<i)) !=0) {sol*=var;sol%=mod;}
var=(var*var)%mod;
}
f2<<sol;
return 0;
}