Sa se calculeze n la puterea k modul p. n,k,p<= 1.000.000.000.
Răspunsuri la întrebare
Răspuns de
1
#include <iostream>
using namespace std;
int main()
{
long long int n,k,p,m,sol=1;
cin>>n>>k>>p;
m=n;
for(int i=0;(1<<i)<=k;i++)
{
if((1<<i)&k)
sol=(sol*m)%p;
m=(m*m)%p;
}
cout<<sol;
return 0;
}
using namespace std;
int main()
{
long long int n,k,p,m,sol=1;
cin>>n>>k>>p;
m=n;
for(int i=0;(1<<i)<=k;i++)
{
if((1<<i)&k)
sol=(sol*m)%p;
m=(m*m)%p;
}
cout<<sol;
return 0;
}
pinkp:
Mulțumesc mult! Din păcate nu înțeleg algoritmul. Mă puteți ajuta cu explicații sau comentarii?
Alte întrebări interesante
Matematică,
8 ani în urmă
Biologie,
8 ani în urmă
Limba română,
8 ani în urmă
Engleza,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă