Pagini recente » Cod sursa (job #2553741) | Cod sursa (job #3168061)
#include <fstream>
using namespace std;
ifstream fin("pascal.in");
ofstream fout("pascal.out");
#define MAX_VALUE 5000000
int a[5000001],b[5000001],c[5000001],v[4];
int main()
{
int i=0;
if(i==0)v[2]=v[3]=v[5]=0;
for(i=1; i<=MAX_VALUE; i++)
{
int x=i;
while(x%2==0)
{
x=x/2;
v[2]++;
}
while(x%3==0)
{
x=x/3;
v[3]++;
}
while(x%5==0)
{
x=x/5;
v[5]++;
}
a[i]=v[2];
b[i]=v[3];
c[i]=v[5];
}
int rand,d,nr=0;
fin>>rand>>d;
if(d==2)
{
for(i=0; i<=rand-1; i++)
{
if(a[rand]-(a[rand-i]+a[i])>=1)nr++;
}
}
else if(d==3)
{
for(i=0; i<=rand-1; i++)
{
if(b[rand]-(b[rand-i]+b[i])>=1)nr++;
}
}
else if(d==4)
{
for(i=0;i<=rand-1;i++)
{
if(a[rand]-(a[rand-i]+a[i])>=2)nr++;
}
}
else if(d==5)
{
for(i=0;i<=rand-1;i++)
{
if(c[rand]-(c[rand-i]+c[i])>=1)nr++;
}
}
else if(d==6)
{
for(i=0;i<=rand-1;i++)
{
if(a[rand]-(a[rand-i]+a[i])>=1&&b[rand]-(b[rand-i]+b[i])>=1)nr++;
}
}fout<<nr;
return 0;
}