323
Cerința
Anul 2017
tocmai s-a încheiat, iar nostalgicii suferă în tăcere deoarece acesta era număr prim. Dorel, un personaj întreprinzător, s-a gândit să afle pentru un număr natural n
dat, care este cel mai mare divizor prim al acestuia.
Date de intrare
Programul citește de la tastatură numărul n
.
Date de ieșire
Programul va afișa pe ecran cel mai mare divizor prim al lui n
.
Restricții și precizări
1 ≤ n ≤ 10
14
Exemplu
Intrare
2018
Ieșire
1009
Explicație
Divizorii lui 2018
sunt 1, 2, 1009, 2018
, iar cel mai mare divizor prim este 1009
.
#include <bits/stdc++.h> using namespace std; int main() { long long int n; cin >> n; long long int dmax=0; long long int d=2; while(n>1) { int p = 0; while(n%d==0) { n/=d; p++; } if(p!=0) { dmax=d; } d++; if(d*d>n) d=n; } cout << dmax; }
Comentarii