Cod sursa(job #3238309)

Utilizator RosheRadutu Robert Roshe Data 24 iulie 2024 09:37:05
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.32 kb
#include <iostream>
#include <fstream>

using namespace std;
ifstream in("lgput.in");
ofstream out("lgput.out");

int main(){
  int N, P;
  int m = 1999999973;
  in >> N >> P;
  int result = 1;
  while(P > 0)
  {
    if(P & 1) result = result * (N % m) % m;
    P = P >> 1;
    N = (N % m) * (N % m) % m;
  }
  out << result; 
}