From 1889a088517ff7909eb470e8302b47b43af3db45 Mon Sep 17 00:00:00 2001 From: Florian Burgener <florian.brgnr@gmail.com> Date: Sun, 12 Dec 2021 02:32:22 +0100 Subject: [PATCH] Fix code after loss of code --- polynomial.py | 26 ++++++++------------------ 1 file changed, 8 insertions(+), 18 deletions(-) diff --git a/polynomial.py b/polynomial.py index 73769da..0c0b5d7 100644 --- a/polynomial.py +++ b/polynomial.py @@ -93,21 +93,10 @@ class Polynomial: def compute_bachet_bezout(a, b): - r = [] - x = [] - y = [] - q = [] - - # Init - r.append(a) - x.append(1) - y.append(0) - q.append(0) - - r.append(b) - x.append(0) - y.append(1) - q.append(0) + r = [a, b] + x = [1, 0] + y = [0, 1] + q = [0, 0] # Computing i = 1 @@ -146,11 +135,12 @@ def compute_lagrange_polynomial(points, prime_number): poly_li *= dividend divider *= points[i][0] - points[k][0] - divider = 1 / divider + divider = modular_inverse(divider, prime_number) point_yi = points[i][1] poly_li = poly_li * Polynomial((divider,)) * Polynomial((point_yi,)) lagrange += poly_li + lagrange %= prime_number return lagrange @@ -166,8 +156,8 @@ def main(): # > 23 => 24 à 46 = 23 points # Il faut trouver 2 points dans [0 ; 23] print(len(message["points"])) - print(message["points"][:23 + 1]) - print(message["points"][23 + 1:]) + print(message["points"][: 23 + 1]) + print(message["points"][23 + 1 :]) # 25 points # Polynome qui passe les 25 points possiblement juste # On test tous les points, si le polynome passe par m + n points c'est le bon -- GitLab