HDU 1788 Chinese remainder theorem again
2014-03-10 09:39
357 查看
题目介绍了一大堆中国剩余定理的东西,其实没有用到.
求N,满足N%Mi = Mi - a.
也就是(N + a) % Mi = 0,也就是(N + a)是Mi的最小公倍数,那么只要求出Mi的最小公倍数再减一个a那么就是答案了.
注意用long long.
求N,满足N%Mi = Mi - a.
也就是(N + a) % Mi = 0,也就是(N + a)是Mi的最小公倍数,那么只要求出Mi的最小公倍数再减一个a那么就是答案了.
注意用long long.
#include <cstdio> using namespace std; long long gcd(long long a, long long b){ return !b ? a : gcd(b, a % b); } long long lcm(long long a, long long b){ return a / gcd(a, b) * b; } int main(int argc, char const *argv[]){ int n, a; while(scanf("%d%d", &n, &a) == 2){ if(!n && !a)break; long long LCM = 1; for(int i = 0; i < n; ++i){ long long b; scanf("%I64d", &b); LCM = lcm(LCM, b); } printf("%I64d\n", LCM - a); } return 0; }
相关文章推荐
- hdu 1788 Chinese remainder theorem again
- Chinese remainder theorem again(hdu 1788)两种解法:线性同余方程或者简单的最小公倍数
- hdu 1788 Chinese remainder theorem again((数学:简单题)
- HDU——1788 Chinese remainder theorem again
- 【HDU】 1788 Chinese remainder theorem again
- HDU1788 Chinese remainder theorem again 中国剩余定理
- HDU 1788——Chinese remainder theorem again
- hdu 1788 Chinese remainder theorem again
- HDU 1788 Chinese remainder theorem again
- hdu 1788 Chinese remainder theorem again
- hdu - 1788 - Chinese remainder theorem again-(gcd,不互质的中国剩余定理)
- hdu 1788 Chinese remainder theorem again(最小公倍数)
- HDU1788 Chinese remainder theorem again【中国剩余定理】
- hdu 1788 Chinese remainder theorem again(最小公倍数)
- Chinese remainder theorem again(HDU 1788)
- Hdu 1788 Chinese remainder theorem again
- HDU 1788 Chinese remainder theorem again 中国剩余定理转换
- HDU 1788 Chinese remainder theorem again
- 读控制台HDU 1788 Chinese remainder theorem again 数论读控制台
- 【数论】 HDOJ 1788 Chinese remainder theorem again