问题链接:HDU1370 Biorhythms。

问题描述:参见上文。

问题分析:本题可以直接用中国剩余定理来解,同余方程如下:

X≡p(mod 23)

X≡e(mod 28)

X≡i(mod 33)

其中,23、28和33是两两互素的,满足中国剩余定理的前提条件。

程序说明

这个题的原题应该是UVALive5421。

这个题与《POJ1006 UVA756 UVALive5421 Biorhythms》略有不同,就是需要输入起始case号,其他完全相同。

参考链接:POJ1006 UVA756 UVALive5421 Biorhythms

AC的C++语言程序:

/* HDU1370 Biorhythms */#include <stdio.h>// 递推法实现扩展欧几里德算法
long exgcd(long a, long b, long  *x, long *y)
{long x0=1, y0=0, x1=0, y1=1;long r, q;*x=0;*y=1;r = a % b;q = (a - r) / b;while(r){*x = x0 - q * x1;*y = y0 - q * y1;x0 = x1;y0 = y1;x1 = *x;y1 = *y;a = b;b = r;r = a % b;q = (a - r) / b;}return b;
}// 扩展欧几里德算法求逆元
long minv(long a, long p)
{long x, y;exgcd(a, p, &x, &y);return x<0 ? x+p : x;
}// 中国剩余定理(Chinese remainder theorem, CRT)
long crt(long a[], long m[], int n)
{long bm=1, mi, x=0;int i;for(i=0; i<n; i++)bm *= m[i];for(i=0; i<n; i++) {mi = bm / m[i];x += a[i] * mi * minv(mi, m[i]);x %= bm;}return x;
}int main(void)
{long p, e, i, d;long a[3], m[3];long x, bm;int caseno;scanf("%d", &caseno);for(;;) {scanf("%ld%ld%ld%ld", &p, &e, &i, &d);if(p==-1 && e==-1 && i==-1 && d==-1)break;a[0] = p;a[1] = e;a[2] = i;m[0] = 23;m[1] = 28;m[2] = 33;bm = 23 * 28 * 33;x = crt(a, m, 3);while(x<=d)x += bm;printf("Case %d: the next triple peak occurs in %ld days.\n", caseno++, x-d);}return 0;
}

HDU1370 Biorhythms【中国剩余定理】相关推荐

  1. NUC1100 Biorhythms【中国剩余定理】

    Biorhythms 时间限制: 1000ms 内存限制: 65536KB 问题描述 Some people believe that there are three cycles in a pers ...

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

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

  3. Bailian2977 生理周期【枚举+中国剩余定理】

    2977:生理周期 总时间限制: 1000ms 内存限制: 65536kB 描述 人生来就有三个生理周期,分别为体力.感情和智力周期,它们的周期长度为23天.28天和33天.每一个周期中有一天是高峰. ...

  4. Bailian4148 生理周期【枚举+中国剩余定理】

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

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

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

  6. 【中国剩余定理】终于弄懂剩余定理了

    [茅塞顿开--这么简单的东西我居然刚懂]//中国古代求解一次同余式组(见同余)的方法.是数论中一个重要定理.又称中国剩余定理. //中国剩余定理的结论: //令任意固定整数为M,当M/A余a,M/B余 ...

  7. 数论 · 中国剩余定理(CRT)

    UPDATE 2021 - 12 - 10:补充扩展中国剩余定理 EXCRT,额外开了一篇博客写. 2021 - 12 - 21:修改了一两句话,更严谨一些. 问题概述 小奥里的韩信点兵问题: { x ...

  8. 中国剩余定理(孙子定理)的证明和c++求解

    <孙子算经>里面的"物不知数"说的是这样的一个题目:一堆东西不知道具体数目,3个一数剩2个,5个一数剩3个,7个一数剩2个,问一共有多少个. 书里面给了计算过程及答案: ...

  9. 解题报告(十三)中国剩余定理(ACM / OI)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...

最新文章

  1. mysql err 1349_MySQL 视图 第1349号错误解决方法
  2. matlab 如何代码自已标注_MATLAB概述
  3. 20步打造最安全的Nginx Web服务器
  4. 安卓四大组件之Service
  5. java 不编译咋办_java – 为什么JVM不编译整个程序,而不是逐个编译?
  6. SVN 清理失败解决方案
  7. R语言如何并行处理[parallel package][向量化操作并行优化]
  8. RedHat Enterprise Linux 5下安装firefox
  9. 数据库优化java设计模式架构 策略 责任链
  10. Keil下载代码闪退的问题(已解决)
  11. JAVA解析JSON格式的数据
  12. 视频中的声音如何处理,如何添加背景音乐?
  13. 车载应用--AUXIN 利用 surfaceView 预览 Camera 数据
  14. sql统计某字段出现次数
  15. 热天的阅读日志,真的好热
  16. GRE词汇分类之责骂词汇
  17. SQL语句的基础教程(二)
  18. 1.2 LaTex排版
  19. 【C语言】解决 “error: function definition is not allowed here”
  20. Pandas-数据结构-Series(一):创建Series【①由字典创建;②由一维数组创建;③由标量创建】【Series的属性:index、values、name】

热门文章

  1. CentOS 7 安装 MySQL 5.6
  2. [推荐]HLSL编程实现PhotoShop滤镜效果
  3. vim写python_用 Vim 写 Python 的最佳实践
  4. SQL中 ROW_NUMBER 函数的用法
  5. win7 更新android sdk,大神为你详解win7系统android sdk manager无法更新的处理对策
  6. android自定义协议,Android / iOS-自定义URI /协议处理
  7. java多线程交替打印_java多线程 更优雅的实现线程同步:交替打印A、B LockSupport实现...
  8. MapReduce进程
  9. matlab提取线条,请问如何将图片中的红色激光线条给提取出来啊,有没有大佬救救孩子,贴出代码给瞅瞅啊!谢谢!...
  10. 限时促销_江北恒一乐优家丨限时优惠大促销