Cod sursa(job #287381)

Utilizator lucianvnDragomir Lucian lucianvn Data 24 martie 2009 20:00:43
Problema Numere 2 Scor 45
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include<fstream.h>
ifstream intrare ("numere2.in");
ofstream iesire ("numere2.out");
long int v[10000];
int main()
{
	long long unsigned p,a,j,poz=0,unu;
	int i,nr,doi;
	intrare>>p;
	a=p;
	for(j=2;j<=p;j++)
	{
		while(a%j==0)
		{
			a/=j;
			v[j]++;
			if(poz<j) poz=j;
		}
		if(a==1) j=p+2;
	}
	int sw=0;      if(p==0) {unu=0;v[poz]=1;} else unu=1;
	if(p==1) v[poz]=1;
	for(i=2;i<=poz;i++)
	{
		if(v[i]!=0)
		{
			unu*=i;
			if(v[poz]!=v[i])
			{
				sw=1;
				i=poz+2;
			}
		}
	}
	if(sw==0) iesire<<unu<<"\n"<<v[poz];
	else iesire<<0;
	return 0;
}