add second example
parent
3641605982
commit
493e68f619
|
@ -1,4 +1,5 @@
|
||||||
import sys, re
|
import sys, re
|
||||||
|
|
||||||
# Возвращает абсолютно наименьший вычет числа a по модулю числа b
|
# Возвращает абсолютно наименьший вычет числа a по модулю числа b
|
||||||
def v(a, b):
|
def v(a, b):
|
||||||
r1 = a % b
|
r1 = a % b
|
||||||
|
@ -12,3 +13,27 @@ def solve(a, p):
|
||||||
|
|
||||||
f = re.fullmatch(r'(\d+)/(\d+)', sys.argv[1]).groups()
|
f = re.fullmatch(r'(\d+)/(\d+)', sys.argv[1]).groups()
|
||||||
print(solve(int(f[0]), int(f[1])))
|
print(solve(int(f[0]), int(f[1])))
|
||||||
|
|
||||||
|
# Более длинное, но подробное решение
|
||||||
|
# # Вернет систему абсолютно наименьших вычетов числа
|
||||||
|
# def system(a):
|
||||||
|
# if a % 2:
|
||||||
|
# return [i for i in range(-(a-1)//2, (a-1)//2+1)]
|
||||||
|
# else:
|
||||||
|
# return [i for i in range(-a//2+1, a//2+1)]
|
||||||
|
|
||||||
|
# # Возвращает абсолютно наименьший вычет числа a по модулю числа b
|
||||||
|
# def v(a, b):
|
||||||
|
# s = system(b)
|
||||||
|
# for e in s:
|
||||||
|
# if a % b == e % b:
|
||||||
|
# return e
|
||||||
|
|
||||||
|
# def legendre(a, p):
|
||||||
|
# count = 0
|
||||||
|
# for i in range(1, (p-1)//2+1):
|
||||||
|
# if v(i*a, p) < 0:
|
||||||
|
# count += 1
|
||||||
|
# return pow(-1, count)
|
||||||
|
|
||||||
|
# print(legendre(11,347))
|
Loading…
Reference in New Issue