Cod sursa(job #2911167)

Utilizator AxicaVirtosu Alexandra Mihaela Axica Data 27 iunie 2022 13:14:39
Problema Pascal Scor 80
Compilator cpp-64 Status done
Runda 3_iulie Marime 0.78 kb
#include <fstream>
#define NMAX 5000000
using namespace std;
ifstream fin ("pascal.in");
ofstream fout ("pascal.out");

int r, d, D[NMAX+1], T[NMAX+1], C[NMAX+1], doi, trei, cinci;
int nr;

int main()
{
    fin>>r>>d;
    for(int i=1; i<=r; i++)
    {
        if(i%2==0)D[i]=D[i/2]+1;
        if(i%3==0)T[i]=T[i/3]+1;
        if(i%5==0) C[i]=C[i/5]+1;
    }
    for(int i=1; i<=r-1; i++)
    {
         doi+=D[r-i+1]-D[i];
         trei+=T[r-i+1]-T[i];
         cinci+=C[r-i+1]-C[i];
         if(d==2 && doi)
            nr++;
         if(d==3 && trei)
            nr++;
         if(d==5 && cinci)
            nr++;
         if(d==6 && doi && trei )
            nr++;
         if(d==4 && doi>=2)
            nr++;
    }
    fout<<nr;
    ///O(n)

    return 0;
}