Cod sursa(job #1782529)

Utilizator giotoPopescu Ioan gioto Data 18 octombrie 2016 11:35:13
Problema Pascal Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <fstream>
using namespace std;
ifstream f("pascal.in");
ofstream g("pascal.out");
int i,p2,p3,p5,R,D,sol;
short v2[5<<20],v3[5<<20],v5[5<<20];
int main()
{
    f>>R>>D;
    for(i=2;i<=R;i+=2) v2[i]=v2[i/2]+1;
    for(i=3;i<=R;i+=3) v3[i]=v3[i/3]+1;
    for(i=5;i<=R;i+=5) v5[i]=v5[i/5]+1;
    for(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&&p2) sol++;
        else if(D==3&&p3) sol++;
        else if(D==5&&p5) sol++;
        else if(D==4&&p2>1) sol++;
        else if(D==6&&p2&&p3) sol++;
    }
    g<<sol;
    return 0;
}