Pagini recente » Cod sursa (job #1536996) | Cod sursa (job #2095063) | Cod sursa (job #1248454) | Cod sursa (job #512861) | Cod sursa (job #988724)
Cod sursa(job #988724)
//Dandu-se doua numere naturale N si P, se cere sa se calculeze restul impartirii lui N^P la 1999999973.
#include <stdio.h>
unsigned long int N, P, mod = 1999999973;
unsigned long int logPow(unsigned long int n, unsigned long int p){
long int z = 1;
n = n % 1999999973;
while(p > 0){
if(p % 2 == 1){
z = (z * n) % 1999999973;
}
n = (n * n) % 1999999973;
p = p / 2;
}
return z;
}
void read(){
freopen("lgput.in", "r", stdin);
scanf("%lu", &N);
scanf("%lu", &P);
}
int main(){
freopen("lgput.out", "w", stdout);
read();
printf("%lu", logPow(N, P));
return 0;
}