这个问题以前用模拟的方法来解决亚军,正如溶液是一个通用的解决方案。

这里使用数学方法:剩下的孙子法(当然,被称为中国剩余法)。由于建议的孙子。所以也承认外国的孙子是数学家。

参考数论建议大家学习的专业书籍法律;

在这里,颜格依照数论的方法写出全过程的程序,不像某些博客仅仅给出终于步骤。方便大家结合程序和专业书本学习这个定律。

int g, s, t;
const int m1 = 23;
const int m2 = 28;
const int m3 = 33;void extGCD(int a, int b)
{if (b == 0){s = 1, t = 0, g = a;}else{extGCD(b, a % b);int tmp = s;s = t;t = tmp - a / b * t;}
}int a, b, c, m;
void preCalculateABCM()
{m = m1 * m2 * m3; //本题==21252int M1 = m / m1;int M2 = m / m2;//=759int M3 = m / m3;extGCD(M1, m1);int y1 = s;if (y1 < 0){int y = -y1;y %= m1;y1 = m1 - y;}extGCD(M2, m2);int y2 = s;if (y2 < 0){int y = -y2;y %= m2;y2 = m2 - y;}extGCD(M3, m3);int y3 = s;if (y3 < 0){int y = -y3;y %= m3;y3 = m3 - y;}a = M1 * y1;b = M2 * y2;c = M3 * y3;
}int meetDates(int p, int e, int i, int d)
{//p %= m1, e %= m2, i %= m3;int x = p * a + e * b + i * c;x %= m;if(x <= d) x = m - (d - x);else x = x - d;return x;
}int main()
{preCalculateABCM();int p,e,i,d, n = 0;while (cin>>p>>e>>i>>d && -1 != d){n++;printf("Case %d: the next triple peak occurs in %d days.\n",n, meetDates(p, e, i, d));}return 0;
}

版权声明:笔者靖心脏,景空间地址:http://blog.csdn.net/kenden23/,只有经过作者同意转载。

POJ 1006 Biorhythms 中国的法律来解决剩余的正式相关推荐

  1. POJ 1006 Biorhythms

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

  2. 麦当劳中国阿里巴巴跨端官方会员店正式上线

    近日,麦当劳中国阿里巴巴跨端官方会员店正式上线,为消费者提供从店内点餐.外卖.卡券购买到消费积分等全场景贯通的体验,标志着麦当劳中国与阿里全域合作全面开启.双方将携手通过平台融合.数据智能应用等创新方 ...

  3. 【中国剩余定理】POJ 1006 HDU 1370 Biorhythms

    题目链接: http://poj.org/problem?id=1006 http://acm.hdu.edu.cn/showproblem.php?pid=1370 题目大意: (X+d)%23=a ...

  4. Poj 1006 / OpenJudge 2977 1006 Biorhythms/生理周期

    1.链接地址: http://poj.org/problem?id=1006 http://bailian.openjudge.cn/practice/2977 2.题目: Biorhythms Ti ...

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

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

  6. poj 1006 java_POJ 1006 Biorhythms 数论-(孙子定理)

    这是一道变形的孙子定理的题目,直接用公式. 代码如下: #include #include #include #include #include #include #include #include ...

  7. poj 1006 生理周期

    题目链接:http://poj.org/problem?id=1006 题意:中文题. 中国剩余定理: 1 #include <cstdio> 2 #include <cmath&g ...

  8. poj 1006(中国剩余定理)

    中国剩余定理: <孙子算经>中有"物不知数"问题:"今有物不知其数,三三数之余二 ,五五数之余三 ,七七数之余二,问物几何?"答为"23& ...

  9. 生理周期,POJ(1006)

    题目链接:http://poj.org/problem?id=1006 解题报告: 1.枚举天数的时候可以根据前面的结果直接跳过一些错误的答案. ///三个周期是23,28,33, #include ...

最新文章

  1. Edraw Max(亿图图示)案例:产品经理如何用亿图绘制流程图?
  2. python 循环中报错 继续运行_python中列表删除和多重循环退出
  3. nagios视频教程【原创】
  4. 茶杯头开枪ahk代码
  5. mybaties与hibernate的不同点
  6. MongoDB入门示例及介绍
  7. [51nod1116]K进制下的大数
  8. 如何创建_重庆市百科如何创建
  9. 希尔伯特变换与SSB调制
  10. 【音视频】WIN8|WIN10的桌面采集技术-DXGI(一)
  11. 数字信号处理 史林 课本答案(汇总)
  12. vscode配置和快捷键
  13. mysql横切竖切_MySQL常用操作 - cheney-f的个人空间 - OSCHINA - 中文开源技术交流社区...
  14. k8s 详解 pod 生命周期 容器探测(live and ready) 钩子函数 pod的重启策略
  15. 车载冰箱E-mark认证要多长时间?
  16. 计算机网络(4)传输层
  17. ebc是什么意思_ebc是什么意思?金蝶软件可靠吗?
  18. 区块链时代,企业如何构筑竞争力的护城河?
  19. 专家:闽新增11家A级物流企业多受益“信息快车”
  20. 使用Synology群晖内置web station和榴莲壳发布自己的网站(二)设置Web Station

热门文章

  1. partial 分布类
  2. Jmeter连接MySQL数据库
  3. Servlet第一篇【介绍Servlet、HTTP协议、WEB目录结构、编写入门Servlet程序、Servlet生命周期】...
  4. java基础-java反射机制
  5. Bourne Shell及shell编程
  6. JavaScript速记
  7. 远观近看阿里云ET平台 如何开启AI落地新风潮
  8. Spring Boot 入门
  9. 20145129 课程总结
  10. centos6.5报错:checking filesystems failed问题处理