Cod sursa(job #1354630)

Utilizator LegionHagiu Stefan Legion Data 21 februarie 2015 22:08:39
Problema Pascal Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.27 kb
#include <iostream>
#include <fstream>
using namespace std;
int diviz2[5000001],diviz3[5000001],diviz5[5000001];
int main()
{
    ifstream in("pascal.in");
    ofstream out("pascal.out");
    int r,d,i,x,j,d2,d3,d5,sus2=0,sus3=0,sus5=0,jos2=0,jos3=0,jos5=0,t;
    in>>r;
    in>>d;
    for (i=2;i<=r;i++)
    {
        if (i%2==0)
        {
            diviz2[i]=diviz2[i/2]+1;
        }
        if (i%3==0)
        {
            diviz3[i]=diviz3[i/3]+1;
        }
        if (i%5==0)
        {
            diviz5[i]=diviz5[i/5]+1;
        }
        d2+=diviz2[i];
        d3+=diviz3[i];
        d5+=diviz5[i];
    }
    sus2=d2;
    sus3=d3;
    sus5=d5;
    for (i=1;i<r;i++)
    {
        sus2-=diviz2[r-i+1];
        sus3-=diviz3[r-i+1];
        sus5-=diviz5[r-i+1];
        jos2+=diviz2[i];
        jos3+=diviz3[i];
        jos5+=diviz5[i];
        if (d==2&&d2-sus2-jos2>0)
        {
            t++;
        }
        if (d==3&&d3-sus3-jos3>0)
        {
            t++;
        }
        if (d==4&&d2-sus2-jos2>1)
        {
            t++;
        }
        if (d==5&&d5-sus5-jos5>0)
        {
            t++;
        }
        if (d==6&&d2-sus2-jos2>0&&d3-sus3-jos3>0)
        {
            t++;
        }

    }
    out<<t;
}