Cod sursa(job #2027450)
Utilizator | Groza Iulia Diana Groza_Iulia_Diana | Data | 26 septembrie 2017 09:26:59 |
---|---|---|---|
Problema | Divizori Primi | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.7 kb |
#include <fstream>
#include <cmath>
using namespace std;
ifstream fin("divprim.in");
ofstream fout("divprim.out");
const int Nmax = 1000000;
long long n, k, i, j, nr[Nmax+5];
bool ok, v[Nmax+5];
void ciur()
{
v[0] = 1;
v[1] = 1;
for(i=2; i<=Nmax; i++)
if(!v[i])
{
nr[i] = 1;
for(j=2; i*j<=Nmax; j++)
{
v[i*j] = 1;
nr[i*j]++;
}
}
}
int main()
{
fin >> n >> k;
ciur();
while(!ok && n>=0)
{
if(nr[n]==k)
ok = 1;
n--;
}
n++;
fout << n;
fin.close();
fout.close();
return 0;
}