Cod sursa(job #2257264)

Utilizator AxellbenCretu Alexandru Axellben Data 9 octombrie 2018 21:13:13
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.4 kb
#include <fstream>
#include <iostream>

using namespace std;

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

const int MOD = 1999999973;

int power(int N, int P) {
  int r = 1;
  while (P) {
    if (P % 2 == 1) {
      r = (1LL * r * N) % MOD;
    }
    N = (1LL * N * N) % MOD;
    P = P / 2;
  }
  return r;
}

int main() {
  int N, P;
  fin >> N >> P;
  fout << power(N, P);
}