Cod sursa(job #1609735)

Utilizator Constantin1998Draghici Constantin Constantin1998 Data 22 februarie 2016 23:07:04
Problema Divizori Primi Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <cstdio>
#define FOR(i,a,b) for(i=a;i<=b;++i)
using namespace std;

const int Nmax=1000001;
int a[Nmax][8],prim[Nmax];

int main()
{
   freopen("divprim.in","r",stdin);
   freopen("divprim.out","w",stdout);

   int t,n,k,i,j;

   FOR(i,2,Nmax)
    if(!prim[i])
     for(j=i;j<=Nmax;j+=i)
      ++prim[j];

   FOR(i,2,Nmax)
    FOR(j,0,7)
        if(prim[i]==j)
          a[i][j]=i;
        else
          a[i][j]=a[i-1][j];

   scanf("%d",&t);

   FOR(i,1,t)
   {
       scanf("%d%d",&n,&k);
       printf("%d\n",a[n][k]);
   }



}