fbpx

Problema #1474 – exponent – Rezolvari PBInfo

de Mihai-Alexandru

Softescu a învăţat azi la şcoală, la ora de informatică algoritmul determinării exponentului unui număr natural prim p în descompunerea în factori primi a lui n!.

Exemplu

exponent.in

6 4

exponent.out

2

Explicație

6!=1*2*3*4*5*6 = 1*32*42*5.

#include<fstream>
#include <bits/stdc++.h>
using namespace std;
ifstream fin("exponent.in");
ofstream fout("exponent.out");
int main()
{
    int n,x,d=2,p,q,exp,m=100000,k;
    fin>>n>>k;
    while(k>1)
    {
        if(k%d==0)
        {
            p=0;
            x=0;
            while(k%d==0)
            {
                k=k/d;
                p ++;
            }
            for(int i=d;i<=n;i*=d) x=x+n/i;
            x=x/p;
            m=min(m,x);
        }
        d++;
    }
    fout<<m;
    return 0;
}
Comentarii

S-ar putea sa iti placa