题意
人自出生起就有体力,情感和智力三个生理周期,分别为23,28和33天。一个周期内有一天为峰值,在这一天,人在对应的方面(体力,情感或智力)表现最好。通常这三个周期的峰值不会是同一天。现在给出三个日期,分别对应于体力,情感,智力出现峰值的日期。然后再给出一个起始日期,要求从这一天开始,算出最少再过多少天后三个峰值同时出现。
这题是中国剩余定理终极水题(连模板都算不上)  但是中国剩余定理一直是我心中的痛。。

中国剩余定理

  在《孙子算经》中有这样一个问题:“今有物不知其数,三三数之剩二(除以3余2),五五数之剩三(除以5余3),七七数之剩二(除以7余2),问物几何?”这个问题称为“孙子问题”,该问题的一般解法国际上称为“中国剩余定理”。具体解法分三步:

  1. 找出三个数:从3和5的公倍数中找出被7除余1的最小数15,从3和7的公倍数中找出被5除余1 的最小数21,最后从5和7的公倍数中找出除3余1的最小数70。
  2. 用15乘以2(2为最终结果除以7的余数),用21乘以3(3为最终结果除以5的余数),同理,用70乘以2(2为最终结果除以3的余数),然后把三个乘积相加15∗2+21∗3+70∗215∗2+21∗3+70∗2得到和233。
  3. 用233除以3,5,7三个数的最小公倍数105,得到余数23,即233%105=23233%105=23。这个余数23就是符合条件的最小数。

  使 33 * 28 * a % 23 = 1,得a = 6; 33 * 28 * 6 = 5544;

  使23 * 33 * b % 28 = 1, 得b = 19;23 * 33 * 19 = 14421; 
  使23 * 28 * c % 33 = 1, 得c = 2;  23 * 28 * 2 = 1288。

  那么x  =  5544 * p + 14421 * e + 1288 * i
  

#include<stdio.h>#define MAX 21252int main()
{int p, e, i, d, n, count = 0;while( scanf("%d%d%d%d", &p, &e, &i, &d) != EOF ){count++;if(p == -1 && e == -1 && i == -1 && d == -1){break;}n = ( 5544 * p + 14421 * e + 1288 * i - d ) % MAX;if( n <= 0 )   // 范围限制
        {n += 21252;}printf("Case %d: the next triple peak occurs in %d days.\n", count, n );}return 0;
}

View Code

转载于:https://www.cnblogs.com/bxd123/p/10964501.html

Biorhythms 中国剩余定理相关推荐

  1. POJ-1006 Biorhythms 中国剩余定理

    中国剩余定理说白了就是小学时候的韩信点兵的完全版.给定一系列数,给定条件是一个数MOD这一些列数的结果,问你最后这个数最少为多少. 抽象出来就是N个同余方程,利用扩展GCD就可以求得这一结果,本题给定 ...

  2. 数论 —— 线性同余方程组与中国剩余定理

    [线性同余方程组] 由若干个线性同余方程构成的线性方程组. 例如: 其解法最早由我国<孙子算经>给出,因此解法称为"孙子定理",又叫"中国剩余定理" ...

  3. ACM数论----中国剩余定理与拓展中国剩余定理

    一.问题引入: 在<孙子算经>中有这样一个问题:"今有物不知其数,三三数之剩二(除以3余2),五五数之剩三(除以5余3),七七数之剩二(除以7余2),问物几何?"这个问 ...

  4. 挑战程序竞赛系列(41):4.1中国剩余定理

    挑战程序竞赛系列(41):4.1中国剩余定理 详细代码可以fork下Github上leetcode项目,不定期更新. 练习题如下: POJ 1006: Biorhythms POJ 2891: Str ...

  5. CF338D GCD Table(拓展中国剩余定理,细节处理,2900分)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 CF338D GCD Table(拓展中国剩余定理,细节处理,2900分) Problem 有一张 n ...

  6. 初等数论--同余方程--同余方程组:中国剩余定理

    初等数论--同余方程--同余方程组:中国剩余定理 博主是初学初等数论(整除+同余+原根),本意是想整理一些较难理解的定理.算法,加深记忆也方便日后查找:如果有错,欢迎指正. 我整理成一个系列:初等数论 ...

  7. 数论一之定理证明——裴蜀/威尔逊/费马/扩展欧几里得/[扩展]欧拉/[扩展]中国剩余定理,欧拉函数,逆元,剩余系,筛法

    打死没想到会在H老师处学懂数论 同余,整除 模运算 埃式筛法 欧拉筛法 最大公约数和最小公倍数 辗转相除法 更相减损术 裴蜀定理 威尔逊定理 费马定理 同余等价类.剩余系.缩系 欧拉函数 欧拉定理 扩 ...

  8. 信奥中的数学:孙子定理 中国剩余定理

    孙子定理 中国剩余定理 孙子定理 中国剩余定理_Dreamer Thinker Doer-CSDN博客 中国剩余问题(简介+详解) 中国剩余问题(简介+详解)_dreamzuora的博客-CSDN博客 ...

  9. 通常情况下的中国剩余定理

    这几天学了学中国剩余定理....本来计划是一天学互质版一天学非互质版的,结果非互质版就学了好长时间...不过好在会证明了,考场上大力推一波应该是没问题的吧... 中国剩余定理是求形如x≡a1(mod ...

  10. poj 1006 java_POJ 1006 Java:中国剩余定理

    题目描述: 人生来就有三个生理周期,分别为体力.感情和智力周期,它们的周期长度为23天.28天和33天.每一个周期中有一天是高峰.在高峰这天,人会在相应的方面表现出色.例如,智力周期的高峰,人会思维敏 ...

最新文章

  1. 前端规范之媒体文件规范
  2. windows mobile C# net3.5 如何捕捉Arrow的CheckBox的KeyDown事件?
  3. csrf漏洞防御方案_变量覆盖漏洞利用及防御方案
  4. volatile关键字的作用-适用场景
  5. H5 中 bordercolorlight 属性的用法及作用
  6. 测试化验加工费云服务器文献信息,监管▕ 科研经费使用中的 “红线”和“禁区”典型问题自查清单...
  7. Java压缩/解压缩二进制文件
  8. Android签名机制:生成keystore、签名、查看签名信息
  9. UVA156 Ananagrams【map+vector】
  10. windows使用命令或批处理文件打开远程桌面
  11. Redmi Book14 pro 通过软件控制风扇转速和噪音
  12. 路由与交换技术(常用版)
  13. 项目上拿来的 有演示 类似kindlePush微信小程序 内容值得
  14. 第十一届“认证杯”数学中国数学建模国际赛 (2022 CERTIFICATE AUTHORITY CUP INTERNATIONAL
  15. 易經大意(8) 三和 韓長庚 著
  16. 正则表达式常用语法速查+一个简单使用案例
  17. 大牛谈如何搞定机器视觉
  18. ARM系统的寻址方式
  19. 橙汁(柠檬)戚风蛋糕配方和做法
  20. android之DPAD上下左右四个键控制

热门文章

  1. 机器学习(二)——贝叶斯算法
  2. linux安装oracle11g视频,Linux安装oracle11g详细步骤及问题汇总
  3. 2021-06-26 严格检查模式 字符串
  4. 2021-06-24边框塌陷解决方案
  5. 如何操作反射中构造方法、属性和普通方法?
  6. 计算机系统基础栈,计算机系统基础 (一): 程序的表示, 转换与链接 (第七周小测验)...
  7. java对读写文件进行操作
  8. oracle反生异常会回滚吗,Oracle transaction rollback 事务异常回滚问题分析
  9. vc c mysql_VC++ 利用 MySQL connector c 访问MySQL 数据库
  10. springboot的学习笔记,这个很重要