Cod sursa(job #2270181)

Utilizator danin01Nastase Daniel danin01 Data 27 octombrie 2018 09:56:51
Problema Pascal Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.84 kb
#include <fstream>

using namespace std;

ifstream f("pascal.in");
ofstream g("pascal.out");

int r,d,v2[5000001],v3[5000001],v5[5000001],p2,p3,p5;

int main()
{
    f>>r>>d;
    for(int i=1;i<=r;++i)
    {
        if(i%2==0)v2[i]=v2[i/2]+1;
        if(i%3==0)v3[i]=v3[i/3]+1;
        if(i%5==0)v5[i]=v5[i/5]+1;
    }
    int k=0;
    for(int i=1;i<=r;++i)
    {
        p2+=v2[r-i+1]-v2[i];
        p3+=v3[r-i+1]-v3[i];
        p5+=v5[r-i+1]-v5[i];

        if(d==2)
        {
            if(p2>0)++k;
        }
        else if(d==3)
        {
            if(p3>0)++k;
        }
        else if(d==4)
        {
            if(p2>1)++k;
        }
        else if(d==5)
        {
            if(p5>0)++k;
        }
        else
        {
            if(p2>0 && p3>0)++k;
        }

    }
    g<<k;
    return 0;
}