이산로그 편집하기
최신판 | 당신의 편집 | ||
43번째 줄: | 43번째 줄: | ||
y1, y2 = y2, y1 - q * y2 | y1, y2 = y2, y1 - q * y2 | ||
return (x1, y1, a1) | return (x1, y1, a1) | ||
− | + | def inv(a, m): | |
x, y,g = egcd(a, m) | x, y,g = egcd(a, m) | ||
if g != 1: | if g != 1: | ||
raise Exception('No modular inverse') | raise Exception('No modular inverse') | ||
return x%m | return x%m | ||
− | + | def func2(a, b, p): | |
table1 = [] | table1 = [] | ||
k = int(p**0.5) | k = int(p**0.5) |