Cod sursa(job #3358268)

Utilizator Crisan_AndreiCrisan Paul-Andrei Crisan_Andrei Data 15 iunie 2026 22:10:47
Problema Ridicare la putere in timp logaritmic Scor 0
Compilator c-64 Status done
Runda Arhiva educationala Marime 0.54 kb
#include <stdio.h>
#include <stdint.h>
#include <stdlib.h>
#define mod 1999999973
long long exp(long long x, long long n)
{
    x %= mod;
    if(n == 0)
        return 1;
    else if(n % 2 == 0)
        return exp((x * x) % mod, n / 2);
    else
        return (x * exp((x * x) % mod, (n - 1) / 2) % mod);
}
int main(void)
{
    long long x, n;
    FILE *in;
    FILE *out;
    in = fopen("lgput.in", "r");
    out = fopen("lgput.in", "r");
    fscanf(in, "%lld%lld", &x, &n);
    fprintf(out, "%lld", exp(x, n));
    return 0;
}