Cod sursa(job #164292)

Utilizator jupanu92Anonim jupanu92 Data 23 martie 2008 20:53:00
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.32 kb
#include<fstream>
using namespace std;

int main()
{unsigned long int i,n,p,a,m,sol=1;

ifstream fin("lgput.in");
ofstream fout("lgput.out");

m=1999999973;
fin>>n>>p;
 a=n;
for(i=0;(1<<i)<=p;i++)
    {if( ((1<<i)&p) >0 ) sol=(sol*a)%m;
     a=(a*a)%m;
    }
fout<<sol;
fin.close();
fout.close();
return 0;
}