Cod sursa(job #42871)

Utilizator c_sebiSebastian Crisan c_sebi Data 29 martie 2007 16:37:09
Problema Pascal Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <fstream.h>

int p[10];

void put(int a, int s)
{
	int i;
	for (i=2; i<=5; i++)
		while (a%i==0)
			{  a/=i;
				p[i]=p[i]+s;
			}
}

int main()
{
	int n, k, d, ok;
	long nr=0;
	ifstream f("pascal.in");
	f>>n>>d;
	f.close();
	for (k=1; k<=(n)/2; k++)
		{
			ok=0;
			put (n-k+1, 1);
			put (k, -1);
			if (d==4) if (p[2]>=2) nr+=2, ok=1; else;
			else if (d==6) if (p[2]&&p[3]) nr+=2, ok=1; else;
			else if (p[d]) nr+=2, ok=1;
			if (k==n/2 && n%2==0 && nr && ok) nr--;
		}
	ofstream g("pascal.out");
	g<<nr<<"\n";
	g.close();
	return 0;
}