Cod sursa(job #2340575)

Utilizator bigmixerVictor Purice bigmixer Data 10 februarie 2019 17:59:00
Problema Factorial Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.13 kb
#include <bits/stdc++.h>  //2fat2code a.k.a grandmixer420
#define ll long long
#pragma GCC optimize("O3")
#pragma GCC optimize("Ofast")
#define all(a) (a).begin(), (a).end()
#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")
#define sz size
#define fr first
#define sc second
#define pb push_back
#define er erase
#define in insert
#define mp make_pair
#define pi pair
#define rc(s) return cout<<s,0
#define int long long
using namespace std;

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

int n,b;
map<int,int>divi;
vector<int>v;

int32_t main(){
    ios_base :: sync_with_stdio(0); cin.tie(); cout.tie();
    fin >> n ;
    b=10;
    for(int i=2LL;i*i<=b;i++){
        while(b%i==0LL){
            b/=i;
            divi[i]++;
        }
    }
    if(b>=2LL) divi[b]++;
    auto it=divi.begin();
    while(it!=divi.end()){
        int x=it->first;
        int y=x;
        int sum=0LL;
        while(x<=n){
            sum+=(n/x);
            x=x*y;
        }
        int h=it->second;
        v.push_back(sum/h);
        it++;
    }
    sort(all(v));
    fout<<v[0];
}