Organiser la bibliothèque des professionnels du concours ~ Liste des numéros environ ~

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

Organiser la bibliothèque des professionnels du concours ~ Liste des numéros environ ~
Disposition de la bibliothèque professionnelle de concours ~ Équation indéfinie linéaire bidimensionnelle ~
[Pour les professionnels de la concurrence] Résumé du doublement
Organisation de bibliothèques professionnelles compétitives ~ dés ~
Confirmation des bases du concours professionnel ~ pgcd et lcm ~