Cod sursa(job #1133672)

Utilizator omerOmer Cerrahoglu omer Data 5 martie 2014 12:14:04
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.41 kb
#include <iostream>
#include<stdio.h>
using namespace std;
FILE *f,*g;
const int M=1999999973;
int N,P;
int main()
{
    f=fopen("lgput.in","r");
    g=fopen("lgput.out","w");
    fscanf(f,"%d%d",&N,&P);
    int rez=1;
    while(P>0)
        {
            if (P%2==1) rez=((long long)rez*N)%M;
            N=((long long)N*N)%M;
            P=P/2;
        }
    fprintf(g,"%d",rez);
    return 0;
}