Math

假设 3721 = x * y,其中x, y 均为整数,则 x+y 最大是多少?

| Shared Chaos | #数学 | #math

翻了个船,记一笔。题目是:假设 3721=xy3721 = x * y,其中 xxyy 均为整数,则 x+yx+y 最大是多少?

阅读全文…( 本文约 475 字,阅读大致需要 1 分钟 )

gmpy/离散对数

前几天做一个解离散对数的题用到了 gmpy,它是 GMP 的 Python 封装,用来算大数。

这里记两笔。首先是大整数需要用 mpz 对象,例如:

p = mpz(13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084171)

判断大数是否是质数:is_prime(p) (求离散对数其实用不着)

求逆元 x1x^{-1}invert(x, p)。例如, y = invert(x, p)(xy)modp=1(x * y) \mod p = 1

阅读全文…( 本文约 690 字,阅读大致需要 2 分钟 )