Răspuns :
#include <iostream>
using namespace std;
int main(){
int n,x,max = 1,nrmax=0;
cin >> n;
for(int i = 1 ; i <= n ; ++i){
cin >> x;
// pentru a determina numarul de factor primi ai unui numar vom folosi descompunerea in factori
int nrf = 0, d = 2, cx = x;
while(x != 1)
{
if(x % d == 0){
nrf ++;
while(x % d == 0)
x /= d;
}
d ++;
if(d * d > x && x > 1)
x = 1 , nrf ++;
}
if(nrf > nrmax)
nrmax = nrf, max = cx;
else
if(nrf == nrmax)
if(cx < max)
max = cx;
}
cout << max << endl;
return 0;
}
using namespace std;
int main(){
int n,x,max = 1,nrmax=0;
cin >> n;
for(int i = 1 ; i <= n ; ++i){
cin >> x;
// pentru a determina numarul de factor primi ai unui numar vom folosi descompunerea in factori
int nrf = 0, d = 2, cx = x;
while(x != 1)
{
if(x % d == 0){
nrf ++;
while(x % d == 0)
x /= d;
}
d ++;
if(d * d > x && x > 1)
x = 1 , nrf ++;
}
if(nrf > nrmax)
nrmax = nrf, max = cx;
else
if(nrf == nrmax)
if(cx < max)
max = cx;
}
cout << max << endl;
return 0;
}
Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile disponibile v-au fost utile și inspiraționale. Dacă aveți întrebări sau aveți nevoie de suport suplimentar, suntem aici pentru a vă ajuta. Ne face plăcere să vă revedem și vă invităm să adăugați site-ul nostru la favorite pentru acces rapid!