Poj 1006-Biorhythms与中国剩余理论

2 篇文章 0 订阅
1 篇文章 0 订阅

关于Poj 1006-Biorhythms与中国剩余理论的介绍不再多说。

已知 (n % 3 = 2, n % 5 = 3, n % 7 = 2), 求n的最小整数解

首先,两个基本的数学公式:
1. 若 a % b = c,则 (a + k * b) % b = c (k为非零整数)。
2. 若 a % b = c,则 (a * k) % b = k * c (k为非零正整数)。

题目我们已知 n % 3 = 2, n % 5 = 3, n % 7 = 2,所以我们假设 n 可以分解为 3 个整数 n1, n2, n3 ,且满足 n1 是 5 和 7 的公倍数,但不可被 3 整除、n2 是 3 和 7 的公倍数,但不可被 5 整除、n3 是 3 和 5 的公倍数,但不可被 7 整除。

这样即可得到 n % 3 = n1 % 3 = 2, n % 5 = n2 % 5 = 3, n % 7 = n3 % 7 = 2。

随后我们设 n1 = 5 x 7 x a x 2, n2 = 3 x 7 x b x 3, n3 = 3 x 5 x c x 2。其中a、b、c分别是满足 (5 x 7 x a) % 3 = 1, (3 x 7 x b) % 5 = 1, (3 x 5 x c) % 7 = 1 的最小正整数。我们可以轻松得到,a = 2, b = 1, c = 1。

因此,n1 = (5 x 7 x 2) x 2, n2 = (3 x 7 x 1) x 3, n3 = (3 x 5 x 1) x 2。
则满足条件的 n 的最小解为 n = (70 × 2 + 21 × 3 + 15 × 2) % lcm(3 , 5 , 7) = 23。

已知 (n + d) % 23 = p; (n + d) % 28 = e; (n + d) % 33 = i,求 n 的最小正整数解

设 (n + d) = n1 + n2 + n3
则 n1 = (33 x 28 x a) x p; (33 x 28 x a) % 23 = 1;
则 n2 = (23 x 33 x b) x e; (23 x 33 x b) % 28 = 1;
则 n3 = (23 x 28 x c) x i; (23 x 28 x c) % 33 = 1;
可得 a = 8, b = 19, c = 2;
即 n1 = 5544 x p; n2 = 14421 x e; n3 = 1288 x i;
因此有 (5544 × p + 14421 × e + 1288 × i) % lcm(23, 28, 33) = n + d

因为 23、28、33 的最小公倍数 lcm(23, 28, 33) = 21252; 且本题所求的是最小正整数解
所以有 (5544 × p + 14421 × e + 1288 × i - d + 21252) % 21252 = n

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值