Cod sursa(job #240290)

Utilizator drag0s93Mandu Dragos drag0s93 Data 7 ianuarie 2009 09:48:56
Problema Divizori Primi Scor 55
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.48 kb
#include<stdio.h>
const int z=1000000;
int t,n,k,nrd[1000000];
void ciur()
{
	int j=0;
	for(int i=2;i<=z;++i)
		if(nrd[i]==0)
			for(j=i;j<=z;j+=i)
				++nrd[j];
}
int calcul()
{
	int i=0;
	for(i=n;i;--i)
		if(nrd[i]==k)
			return i;
	return 0;
}
int main()
{
	int nrmax=0;
	freopen("divprim.in","r",stdin);
	freopen("divprim.out","w",stdout);
	scanf("%d",&t);
	ciur();
	for(int r=1;r<=t;++r)
	{
		scanf("%d%d",&n,&k);
		printf("%d\n",calcul());
	}
	return 0;
}