285
Cerinţa
Se dau n
numere naturale şi un număr natural k
. Afişaţi acele numere date care au cel puţin k
divizori.
Date de intrare
Fişierul de intrare divk.in
conţine pe prima linie numerele n
şi k
, iar pe a doua linie n
numere naturale separate prin spaţii.
Date de ieşire
Fişierul de ieşire divk.out
va conţine pe prima linie numerele care au cel puţin k
divizori, separate printr-un spaţiu, în ordinea în care au fost citite.
Restricţii şi precizări
1 ≤ n ≤ 100
- numerele de pe a doua linie a fişierului de intrare, precum şi
k
vor avea cel mult9
cifre
Exemplu
divk.in
6 5 100 9 400 56 7 10
divk.out
100 400 56
#include <bits/stdc++.h> using namespace std; ifstream fin("divk.in"); ofstream fout("divk.out"); int main() { long long n,x,k; fin>>n>>k; for(int i=1;i<=n;i++) { fin>>x; int cate=0; long long aux=x; for(int j=1;j*j<=x;j++) { if(x%j==0) cate+=2; if(j*j==x) cate--; } if(cate>=k) fout<<aux<<" "; } return 0; }
Comentarii