Cod sursa(job #215445)

Utilizator Ionescu_MariaIonescu Maria-Dorina Ionescu_Maria Data 18 octombrie 2008 18:29:55
Problema Pascal Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include<fstream.h>
long d,r,nr,c,i;
int p[29900];
long put(long p,long n)
{long f=0;
while(p<=n)
	{f+=n/p;
	p*=p;
	}
return f;
}
int main()
{ifstream fin("pascal.in");
fin>>r>>d;
fin.close();
ofstream fout("pascal.out");
if(d!=4&&d!=6)
{for(i=1;i<=r;i++)
	p[i]=put(d,i);
nr=0;
for(c=1;c<=r;c++)
	if(p[r]-p[r-c]-p[c]>=1)
		nr++;
fout<<nr<<'\n';
}
else
if(d==4)
	{d=2;
	for(i=1;i<=r;i++)
		p[i]=put(d,i);
	nr=0;
	for(c=1;c<=r;c++)
		if(p[r]-p[r-c]-p[c]>=2)
			nr++;
	fout<<nr<<'\n';
	}
	else
	if(d==6)
		{for(i=1;i<=r;i++)
			if(put(2,i)<put(3,i))
				p[i]=put(2,i);
				else
				p[i]=put(3,i);
		 nr=0;
		 for(c=1;c<=r;c++)
			if(p[r]-p[r-c]-p[c]>=1)
				nr++;
		 fout<<nr<<'\n';
		}
fout.close();
return 0;
}