Cod sursa(job #1339758)

Utilizator ValentinSavoiuFMI Savoiu Valentin-Marian ValentinSavoiu Data 11 februarie 2015 09:31:30
Problema Divizori Primi Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <iostream>
#include <fstream>
#include <cstdio>
using namespace std;
ofstream g("divprim.out");
int ciur[1000010],d[10][1000010],i,j;
int main()
{
    freopen("divprim.in", "r", stdin);
    int n,k,a;
    // relizare ciur
    int p=1000000;
    for (int i=2;i<=p;i++){
        if (ciur[i]==0){
            for (int j=i;j<=p;j=j+i){
                ciur[j]++;
            }
        }
    }
    for (i=1;i<=7;i++){
        for (j=1;j<=p;j++){
            if (ciur[j]==i){
                d[i][j]=j;
             }
             else {
                d[i][j]=d[i][j-1];
             }
        }
    }
    int t;
    scanf("%d", &t);
    for (int a=1;a<=t;a++)
    {
        scanf("%d%d", &n, &k);
        g<<d[k][n]<<'\n';
    }
    return 0;
}