【题解】UVA756 Biorhythms (中国剩余定理)
UVA756:https://www.luogu.org/problemnew/show/UVA756
思路
几乎是裸的中国剩余定理模板题
但是需要注意的是此题并不是求最小正整数解
而是求大于d的解
因此对于ans我们需要分类讨论
- 当ans<=d时 ans=M-(d-ans)
- 当ans>d时 输出ans即可
代码
#include<iostream>
#include<cstdio>
using namespace std;
int d,M=**,ans,t;
int m[]={,,,};//存mod数
int a[];
void exgcd(int a,int b,int &d,int &x,int &y)
{
if(!b)
{
x=;
y=;
d=a;
}
else
{
exgcd(b,a%b,d,x,y);
int t=x;
x=y;
y=t-a/b*y;
}
}
int intchina(int n)//中国剩余定理
{
ans=;//注意初始化
int Mi,x,y,g;
for(int i=;i<=n;i++)
{
Mi=M/m[i];
exgcd(Mi,m[i],g,x,y);
ans=(ans+Mi*x*a[i])%M;
}
if(ans<=d) return -(d-ans);
else return ans-d;//ans的分类讨论
}
int main()
{
while()
{
t++;
scanf("%d%d%d%d",&a[],&a[],&a[],&d);
if(a[]==-&&a[]==-&&a[]==-&&d==-) break;
a[]%=,a[]%=,a[]%=;
ans=intchina();
printf("Case %d: the next triple peak occurs in %d days.\n", t, ans);
}
}
【题解】UVA756 Biorhythms (中国剩余定理)的更多相关文章
- Biorhythms(中国剩余定理)
http://shuxueshi.jie.blog.163.com/blog/static/13611628820104179856631/ 这篇博客写的很棒! #include<stdio.h ...
- POJ 1006 - Biorhythms (中国剩余定理)
B - Biorhythms Time Limit:1000MS Memory Limit:10000KB 64bit IO Format:%I64d & %I64u Subm ...
- POJ 1006 Biorhythms --中国剩余定理(互质的)
Biorhythms Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 103539 Accepted: 32012 Des ...
- POJ 1006 Biorhythms(中国剩余定理)
题目地址:POJ 1006 学习了下中国剩余定理.參考的该博客.博客戳这里. 中国剩余定理的求解方法: 假如说x%c1=m1,x%c2=m2,x%c3=m3.那么能够设三个数R1,R2,R3.R1为c ...
- PKU POJ 1006 Biorhythms (中国剩余定理)
中国剩余定理 x = ai (mod mi) ai和mi是一组数,mi两两互质,求x 令Mi = m1*m2*~mk 其中,mi不包含在内. 因为mi两两互质,所以存在x和y, st M ...
- poj1006 / hdu1370 Biorhythms (中国剩余定理)
Biorhythms 题意:读入p,e,i,d 4个整数,已知(n+d)%23=p; (n+d)%28=e; (n+d)%33=i ,求n . (题在文末) 知识点:中国剩余定理 ...
- POJ1006——Biorhythms(中国剩余定理)
Biorhythms Description人生来就有三个生理周期,分别为体力.感情和智力周期,它们的周期长度为23天.28天和33天.每一个周期中有一天是高峰.在高峰这天,人会在相应的方面表现出色. ...
- [poj 2891] Strange Way to Express Integers 解题报告(excrt扩展中国剩余定理)
题目链接:http://poj.org/problem?id=2891 题目大意: 求解同余方程组,不保证模数互质 题解: 扩展中国剩余定理板子题 #include<algorithm> ...
- Biorhythms(中国剩余定理)
Biorhythms Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 127339 Accepted: 40342 Des ...
随机推荐
- nyoj 1208——水题系列——————【dp】
水题系列 时间限制:1000 ms | 内存限制:65535 KB 难度:2 描述 给你一个有向图,每条边都有一定的权值,现在让你从图中的任意一点出发,每次走的边的权值必须必上一次的权 ...
- BNU7538——Clickomania——————【区间dp】
Clickomania Time Limit: 10000ms Memory Limit: 32768KB 64-bit integer IO format: %I64d Java clas ...
- 适用于所有页面的基础样式base.css
@charset "UTF-8"; /*css 初始化 */ html, body, ul, li, ol, dl, dd, dt, p, h1, h2, h3, h4, h5, ...
- 文档碎片DocumentFragment
文档碎片是什么? 参考标准的描述,DocumentFragment是一个轻量级的文档对象,能够提取部分文档的树或创建一个新的文档片段,换句话说有文档缓存的作用. createDocumentFragm ...
- Video标签事件与属性
事件与属性 属性 描述 audioTracks 返回可用的音轨列表(MultipleTrackList对象) autoplay 媒体加载后自动播放 buffered 返回缓冲部件的时间范围(TimeR ...
- Maven入门之简介与安装
一.Maven简介 1.什么是Maven? Maven是一个项目管理工具和集成编译工具,它主要包含如下内容: –一个项目对象模型(Project Object Model), –一组标准集合, –一个 ...
- VueConf 全球首届Vue.js开发者大会资料整理
最近一直关注VueConf全球首届Vue.js开发者大会,现在将此次开发者大会资料整理如下: 一.Vue 2017 现状与展望 [尤雨溪] 在线视频: PPT整理: Vue 2017 现状与展望 ...
- js上拉加载下拉刷新
写在前边: 工作需要,使用ajax在原来的列表下边使用ajax请求后台数据,拼接在列表最下边,在github转了好久,发现了一个bug极多的js刷新插件,尝试了一个下午,就在快放弃的时候,发现下边有留 ...
- php *-devel
源码编译安装个php,缺少好多-devel的库. why devel? devel包至少包括头文件和链接库.如果你的要安装的源码依赖某个库,那肯定需要这两样东西. 让apache支持php 在编译ph ...
- 3D开源推荐:全球卫星地图 Esri-Satellite-Map
演示网址:http://richiecarmichael.github.io/sat/index.html 开源网址:https://github.com/richiecarmichael/Esri- ...