Cod sursa(job #2120638)

Utilizator patcasrarespatcas rares danut patcasrares Data 2 februarie 2018 18:40:44
Problema Pascal Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.91 kb
#include<fstream>
#define DN 5000005
using namespace std;
ifstream fin("pascal.in");
ofstream fout("pascal.out");
int r,d,nr2,nr3,nr5,f,a[DN],nr;
int main()
{
    fin>>r>>d;
    for(int i=2;i<=r;i++)
    {
        f=i;
        if(d==2||d==4||d==6)
            while(f%2==0)
            {
                nr2++;
                f=f/2;
            }
        if(d==3||d==6)
            while(f%3==0)
            {
                nr3++;
                f=f/3;
            }
        if(d==5)
            while(f==5)
            {
                nr5++;
                f=f/5;
            }
        if(d==2)
            a[i]=nr2;
        if(d==3)
            a[i]=nr3;
        if(d==4)
            a[i]=nr2/2*2;
        if(d==5)
            a[i]=nr5;
        if(d==6)
            a[i]=min(nr2,nr3);
    }
    for(int i=1;i<=r;i++)
        if(a[r]-a[i]-a[r-i])
            nr++;
    fout<<nr;
}