Cod sursa(job #1337245)

Utilizator pasoteeOprea Alexandru pasotee Data 8 februarie 2015 19:37:52
Problema Divizori Primi Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <iostream>
#include <fstream>
using namespace std;

int ciur[1000010],d[10][1000010];
int main()
{
    ifstream fin ("divprim.in");
    ofstream fout ("divprim.out");
    // 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]++;
            }
        }
    }
    // am terminat ciurul
    // salvarea tuturor raspunsurilor poisbile
    for (int i=1;i<=7;i++){
        for (int j=1;j<=p;j++){
            if (ciur[j]==i){
                d[i][j]=j;
             }
             else {
                d[i][j]=d[i][j-1];
             }
        }
    }
    int t;
    fin >> t;
    for (int a=1;a<=t;a++){
        int n,k;
        fin >> n;
        fin >> k;
        fout << d[k][n] << endl;
    }
    return 0;
}