Cod sursa(job #3178755)

Utilizator LucasSecaraSecara Lucas Victor LucasSecara Data 2 decembrie 2023 13:29:35
Problema Factorial Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <iostream>
#include <fstream>

using namespace std;

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

long long v[14];
int n, s;

int cb(long long v[], int x){
    int st=1, dr=12, mij, poz;
    while(st<=dr){
        mij = (dr+st)/2;
        if (v[mij]<=x){
            st = mij+1;
            poz = mij;
        }
        else{
            dr = mij-1;
        }
    }
    return poz;
}

int main() {
    long long p=1;
    for (int i=1; i<=13; i++){
        p*=5;
        v[i]=p;
    }
    fin >> n;
    if (n==0) fout << 1;
    else{
        n = n*5;
        s = cb(v, n);
        n = n-(s-1)*5;
        fout << n;
    }
    return 0;
}