Cod sursa(job #356536)

Utilizator eu93Marian S eu93 Data 15 octombrie 2009 00:35:52
Problema GFact Scor 35
Compilator cpp Status done
Runda CNRV #2 Marime 0.61 kb
#include <fstream.h>
#include <iostream.h>
int v[45000],w[45000];
int main()
{ int p,k=0,d=2,i,ok,ok2,y;
long x;
ifstream f ("gfact.in");
ofstream g ("gfact.out");
f>>x>>p;
while (x!=1) {
	while (x%d==0) {
		x=x/d;
		k++;}
	if (k>0) v[d]=k*p;
	d=d+1;
	k=0;
}
y=2; d=2; ok=0;
while (ok==0) {x=y; d=2; 
	while (x!=1) {
		while (x%d==0) {
		x=x/d;
		k++;}
	if (k>0) w[d]+=k;
	d=d+1;
	k=0;
	}
	ok2=1;
	if (v[i]>0 && v[i]>w[i]) ok2=0;
	else {
		for (i=3;i<=44999;i+=2)
			if (v[i]>0 && v[i]>w[i]) ok2=0;
	}
	if (ok2==1) ok=1;
	else y++;
}
g<<y;	
f.close();
g.close();
return 0;
}