Pagini recente » Cod sursa (job #907877) | Cod sursa (job #2829802) | Cod sursa (job #1387807) | Cod sursa (job #1906101) | Cod sursa (job #2333526)
#include<fstream>
#include<iostream>
using namespace std;
ifstream fin("lgput.in");
ofstream fout("lgput.out");
int putere(int a, int b, int c){
int a1=a, r, i;
int v[100000];
v[0]=b;
if(b==0){
return 1;
}
for(i=1; b!=1; i++){
if(b%2==0){
b/=2;
v[i]=b;
}
else {
b-=1;
v[i]=b;
}
}
i-=2;
while(i>=0){
if(v[i]%2!=0){
a*=a1;
}else{
a*=a;
}
if(a>1999999973)
a%=c;
i--;
}
r=a%c;
}
int main(){
int a,b,c=1999999973;
fin>>a>>b;
fout<<putere(a,b,c);
return 0;
}