Cod sursa(job #1802513)

Utilizator dyana_valeryaDiana-Valeria dyana_valerya Data 10 noiembrie 2016 14:29:44
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include<fstream>

using namespace std;
typedef long long ll;

ifstream f("lgput.in");
ofstream t("lgput.out");

int n;
const int y = 1999999973;
long long p;

int ucif(int x, int n,int modul)   
{   
    int tip;
    if(n==0) return 1;   
    if(n%2==1) return (x*ucif(x,n-1,modul))%modul;   
    tip=ucif(x,n/2,modul)%modul;   
    return tip*tip%modul;   
}  


int main(){
	f>>n>>p;
//	int x;
	
//	if(n==0) t<<"1";
//    int cif = 1;
//    while(n--)
//    {
//        cif = (cif*x)%y; 
//    }
//		t<<cif;

t<<ucif(n,p,y);
	
	return 0;
}