Cod sursa(job #602803)

Utilizator SteveStefan Eniceicu Steve Data 13 iulie 2011 09:41:11
Problema Pascal Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <fstream.h>

int prim=2, ordin=1;

void aflare(int asdf)
{
	if (asdf == 6)
	{
		prim=3;
		return;
	}
	if (asdf == 4)
	{
		ordin=2;
		return;
	}
	if (asdf == 5)
	{
		prim=5;
		return;
	}
	if (asdf == 3)
	{
		prim=3;
	}
	return;
}

int main()
{
	long R, i, j, ptR=0, X, Y, numere=0, auxiliar;
	int D;
	ifstream fin;
	fin.open("pascal.in");
	fin>>R>>D;
	fin.close();
	aflare(D);
	j=R;
	while (j)
	{
		j/=prim;
		ptR+=j;
	}
	if (ordin == 2) ptR/=2;
	for (i=1; i<R; i++)
	{
		j=i;
		X=0;
		while (j)
		{
			j/=prim;
			X+=j;
		}
		auxiliar=R-i;
		while (auxiliar)
		{
			auxiliar/=prim;
			X+=auxiliar;
		}
		if (ordin == 2)
		{
			X/=2;
		}
		if (ptR > X)
		{
			numere++;
		}
	}
	ofstream fout;
	fout.open("pascal.out");
	fout<<numere;
	fout.close();
	return 0;
}