Cet article est un détournement de ce qui a été écrit comme code Python et une réécriture de celui-ci en C ++. De plus, lorsque vous utilisez du code C ++, veuillez l'utiliser avec Template (cela ne fonctionnera que si vous l'utilisez ensemble).
enumerate_divisors.py
def make_divisors(n):
divisors=[]
for i in range(1,int(n**0.5)+1):
if n%i==0:
divisors.append(i)
if i!=n//i:
divisors.append(n//i)
#Si vous souhaitez trier par ordre croissant
#divisors.sort()
#Si vous souhaitez trier par ordre décroissant de réduction
#divisors.sort(reverse=True)
return divisors
enumerate_divisors.cc
vector<ll> divisors;//Un tableau qui stocke les fractions
void make_divisors(ll n){
FOR(i,1,sqrt(n)){
if(n%i==0){
divisors.PB(i);
if(i!=n/i){
divisors.PB(n/i);
}
}
}
//Si vous souhaitez trier par ordre croissant
//sort(ALL(divisors));
//Si vous souhaitez trier par ordre décroissant de réduction
//sort(ALL(divisors),greater<ll>());
}
Recommended Posts