Cod sursa(job #2264302)
| Utilizator | Data | 19 octombrie 2018 23:52:28 | |
|---|---|---|---|
| Problema | Ridicare la putere in timp logaritmic | Scor | 10 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.47 kb |
#include<bits/stdc++.h>
using namespace std ;
ifstream f ("lgput.in") ;
ofstream g ("lgput.out") ;
int putere( int n , int p , int MOD)
{
if(p == 0) return 1 ;
if(p == 1) return n ;
int m = putere(n,p/2,MOD) % MOD ;
if(p%2==0) return (m*m)%MOD ;
return (n*m*m)%MOD ;
}
int main()
{
int n , p , x , MOD ;
f>>n>>p ;
MOD = 1999999973 ;
x = putere ( n , p , MOD) ;
g<<x ;
f.close() ;
g.close() ;
return 0 ;
}
