J'ai essayé de résoudre la théorie des nombres entiers d'AOJ avec Python

introduction

Bonjour. C'est moelleux et moelleux. J'ai essayé de résoudre la théorie des nombres entiers d'AOJ avec Python.

Cela fait moins d'un an et demi que j'ai commencé à toucher la programmation moi-même AtCoder est vert, donc je ne suis pas un homme fort.

Puisqu'il y a peu d'articles sur AOJ, mon dossier J'espère que l'équipe Python soutiendra les personnes qui feront de leur mieux à l'avenir. J'ai essayé ensemble.

Ah, allons-y

table des matières

NTL_1_A : Prime Factorization NTL_1_B : Power NTL_1_C : Least Common Multiple NTL_1_D : Euler's Phi Function NTL_1_E : Extended Euclid Algorithm

NTL_1_A : Prime Factorization


#contribution
n = int(input())

#Décomposition des facteurs premiers et stocker les facteurs dans la liste
def fac(n):
    f_n = n
    l = []
    if n==1:
        l.append(1)
        exit()
    
    for i in range(2,int(n**0.5)+1):
        while n%i==0:
            n //= i
            l.append(i)
    if n!=1:
        l.append(n)
    
    return print("{0}:".format(f_n),*l)

fac(n)

NTL_1_B : Power

 #pow tsuyo oi
m,n = map(int,input().split())
mod = 10**9+7

print(pow(m,n,mod))

NTL_1_C : Least Common Multiple

n = int(input())
a = list(map(int,input().split()))

#fonctions gcd et lcm
def gcd(a,b):
    a,b = min(a,b), max(a,b)
    while b!=0:
        a,b=b,a%b
    return a

def lcm(a,b):
    return a*b//gcd(a,b)

from functools import reduce
ans = reduce(lcm,a)
print(ans)

NTL_1_D : Euler's Phi Function

Il semble y avoir quelque chose comme ça ↓ Fonction φ d'Euler (https://mathtrain.jp/phi)

n = int(input())
l = []
def fac(n):
    if n==1:
        l.append(1)
        exit()
    else:
        for i in range(2,int(n**0.5)+1):
            if n%i==0:
                while n%i==0:
                    n //= i    
                l.append(i)
        
        if n!=1:
            l.append(n)
    
    return l

fac(n)
ans = n
for i in l:
    ans *= (1-1/i)
print(int(ans))

NTL_1_E : Extended Euclid Algorithm

Cet article est facile à comprendre. Je suis toujours redevable. Division mutuelle euclidienne étendue (https://qiita.com/drken/items/b97ff231e43bce50199a)

#Euclidienne étendue
def egcd(a, b):
    if a == 0:
        return b, 0, 1
    else:
        g, y, x = egcd(b % a, a)
        return g, x - (b // a) * y, y



x,y = map(int,input().split())
a,b,c = egcd(x,y)

if x==y:
    print(0,1)
    exit()

print(b,c)

en conclusion

Ceci est mon premier article, alors soyez doux

Recommended Posts

J'ai essayé de résoudre la théorie des nombres entiers d'AOJ avec Python
J'ai essayé de résoudre Soma Cube avec python
J'ai essayé de résoudre le problème avec Python Vol.1
Je voulais résoudre ABC172 avec Python
Je voulais résoudre NOMURA Contest 2020 avec Python
J'ai essayé de sortir LLVM IR avec Python
J'ai essayé d'automatiser la fabrication des sushis avec python
Je veux résoudre APG4b avec Python (chapitre 2)
J'ai essayé fp-growth avec python
J'ai essayé de gratter avec Python
J'ai essayé de gratter avec du python
Comment écrire en temps réel hors ligne J'ai essayé de résoudre E12 avec python
J'ai essayé d'implémenter Mine Sweeper sur un terminal avec python
J'ai essayé de démarrer avec le script python de blender_Part 01
J'ai essayé de toucher un fichier CSV avec Python
J'ai essayé de démarrer avec le script python de blender_Partie 02
J'ai essayé d'implémenter le perceptron artificiel avec python
J'ai essayé de toucher Python (installation)
J'ai essayé webScraping avec python.
Je veux déboguer avec Python
J'ai essayé d'exécuter prolog avec python 3.8.2.
J'ai essayé la communication SMTP avec Python
J'ai essayé de trouver l'entropie de l'image avec python
J'ai essayé de simuler la propagation de l'infection avec Python
Je voulais résoudre le concours de programmation Panasonic 2020 avec Python
J'ai essayé de créer diverses "données factices" avec Python faker
J'ai essayé différentes méthodes pour envoyer du courrier japonais avec Python
J'ai essayé de résoudre le problème d'optimisation des combinaisons avec Qiskit
[Python] J'ai essayé de visualiser des tweets sur Corona avec WordCloud
Mayungo's Python Learning Episode 3: J'ai essayé d'imprimer des nombres
J'ai essayé de créer une interface graphique à trois yeux côte à côte avec Python et Tkinter
[Pour les professionnels de la compétition débutants] J'ai essayé de résoudre 40 questions AOJ "ITP I" avec python
Le 15e temps réel hors ligne, j'ai essayé de résoudre le problème de l'écriture avec python
[5e] J'ai essayé de créer un certain outil de type Authenticator avec python
J'ai essayé de résumer la gestion des exceptions Python
J'ai essayé d'implémenter PLSA en Python
J'ai essayé d'implémenter Autoencoder avec TensorFlow
J'ai essayé d'implémenter la permutation en Python
[2nd] J'ai essayé de créer un certain outil de type Authenticator avec python
J'ai essayé de visualiser AutoEncoder avec TensorFlow
J'ai essayé de résoudre le problème de F02 comment écrire en temps réel hors ligne avec Python
Je veux résoudre APG4b avec Python (seulement 4.01 et 4.04 au chapitre 4)
J'ai essayé de commencer avec Hy
J'ai essayé d'implémenter PLSA dans Python 2
[3ème] J'ai essayé de créer un certain outil de type Authenticator avec python
[Python] Un mémo que j'ai essayé de démarrer avec asyncio
Entrée standard Python3 que j'ai essayé de résumer
J'ai essayé de créer une liste de nombres premiers avec python
J'ai essayé le rendu non réaliste avec Python + opencv
[Pandas] J'ai essayé d'analyser les données de ventes avec Python [Pour les débutants]
Je veux jouer avec aws avec python
J'ai essayé de corriger "J'ai essayé la simulation probabiliste du jeu de bingo avec Python"
J'ai essayé de faire un processus d'exécution périodique avec Selenium et Python
J'ai essayé de laisser optuna résoudre le nombre
J'ai essayé un langage fonctionnel avec Python