Cod sursa(job #1077069)

Utilizator WyvernFMI Stanescu Leonard Wyvern Data 10 ianuarie 2014 20:57:21
Problema Frac Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fi("frac.in");
ofstream fo("frac.out");
long long v[100000000],w[100000000],n,p;

int main()
{
    fi>>n>>p;
    int nr=0;
    if (n%2==0) {
        nr++;
        w[nr]=2;
        while (n%2==0)
            n=n/2;
    }
    int d=1;
    while (n>1) {
        d=d+2;
        if (n%d==0) {
            nr++;
            w[nr]=d;
            while (n%d==0)
                n=n/d;
        }
    }
    for (int i=1;i<=nr;i++)
        for (int j=w[i];j<=10000;j=j+w[i])
            v[j]=1;
    nr=0;
    for (int i=1;nr<p;i++)
        if (v[i]==0) {
            nr++;
            if (nr==p)
                fo<<i;
        }
    return 0;
}