Cod sursa(job #1379804)

Utilizator MaarcellKurt Godel Maarcell Data 6 martie 2015 19:35:33
Problema Pascal Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;

int R,D,cnt[5000002][3],nr[3],c[3];

int main() {
    ifstream fin("pascal.in");
    ofstream fout("pascal.out");
    fin >> R >> D;

    nr[0]=2,nr[1]=3,nr[2]=5;
    int i,j,res=0;
    for (i=1; i<=R; i++){
        cnt[i][0]=i/2+cnt[i/2][0];
        cnt[i][1]=i/3+cnt[i/3][1];
        cnt[i][2]=i/5+cnt[i/5][2];
    }

    for (i=0; i<=R; i++) {
        memset(c,0,sizeof(c));
        for (j=0; j<3; j++) c[j]=cnt[R][j]-cnt[i][j]-cnt[R-i][j];
        if (D==2) { if (c[0]>0) res++; }
        else if (D==3) { if (c[1]) res++; }
        else if (D==4) { if (c[0]>1) res++; }
        else if (D==5) { if (c[2]) res++; }
        else if (c[0] && c[1]) res++;
    }

    fout << res << "\n";
    return 0;
}