博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ1006 中国剩余定理
阅读量:5117 次
发布时间:2019-06-13

本文共 1728 字,大约阅读时间需要 5 分钟。

中国剩余定理

例1:一个数被3除余1,被4除余2,被5除余4,这个数最小是几?
题中3、4、5三个数两两互质。则〔4,5〕=20;〔3,5〕=15;〔3,4〕=12;〔3,4,5〕=60。为了使20被3除余1,用20×2=40;使15被4除余1,用15×3=45;使12被5除余1,用12×3=36。然后,40×1+45×2+36×4=274,因为,274>60,所以,274-60×4=34,就是所求的数。

例2:一个数被3除余2,被7除余4,被8除余5,这个数最小是几?题中3、7、8三个数两两互质。则〔7,8〕=56;〔3,8〕=24;〔3,7〕=21;〔3,7,8〕=168。为了使56被3除余1,用56×2=112;使24被7除余1,用24×5=120。使21被8除余1,用21×5=105;然后,112×2+120×4+105×5=1229,因为,1229>168,所以,1229-168×7=53,就是所求的数。 

例3:一个数除以5余4,除以8余3,除以11余2,求满足条件的最小的自然数。题中5、8、11三个数两两互质。

则〔8,11〕=88;〔5,11〕=55;〔5,8〕=40;〔5,8,11〕=440。为了使88被5除余1,用88×2=176;
使55被8除余1,用55×7=385;使40被11除余1,用40×8=320。然后,176×4+385×3+320×2=2499,因为,2499>440,所以,2499-440×5=299,就是所求的数。  

例4:有一个年级的同学,每9人一排多5人,每7人一排多1人,每5人一排多2人,问这个年级至少有多少人 ?

(幸福123老师问的题目)题中9、7、5三个数两两互质。则〔7,5〕=35;〔9,5〕=45;〔9,7〕=63;
〔9,7,5〕=315。为了使35被9除余1,用35×8=280;使45被7除余1,用45×5=225;使63被5除余1,
用63×2=126。然后,280×5+225×1+126×2=1877,因为,1877>315,所以,1877-315×5=302,就是所求的数。

例5:有一个年级的同学,每9人一排多6人,每7人一排多2人,每5人一排多3人,问这个年级至少有多少人 ?

题中9、7、5三个数两两互质。则〔7,5〕=35;〔9,5〕=45;〔9,7〕=63;〔9,7,5〕=315。为了使35被9除余1,用35×8=280;使45被7除余1,用45×5=225;使63被5除余1,用63×2=126。然后,280×6+225×2+126×3=2508,因为,2508>315,所以,2508-315×7=303,就是所求的数。(例5与例4的除数相同,那么各个余数要乘的“数”也分别相同,所不同的就是最后两步。)

#include <iostream>

using namespace std;
int main()
{
int p,e,i,d,count=0;

while(cin>>p>>e>>i>>d,p!=-1)

{
int day=21252;
count++;
int a,b,c,x,y,z;

a=p#;

b=e(;
c=i3;

for(int j=1;;j++)

{
if(924*j#==1)
{
x=924*j;
break;
}
}
for(int j=1;;j++)
{
if(759*j(==1)
{
y=759*j;
break;
}
}
for(int j=1;;j++)
{
if(644*j3==1)
{
z=644*j;
break;
}
}
int s;
s=x*a+y*b+z*c;
day=s!252-d;
if(day<=0)
day+=21252;
cout<<"Case "<<count<<": the next triple peak occurs in "<<day<<" days."<<endl;
}

system("pause");

return 0;
}

 

转载于:https://www.cnblogs.com/yejinru/archive/2012/02/29/2374750.html

你可能感兴趣的文章
NOIP2013 提高组 Day1
查看>>
个人对vue生命周期的理解
查看>>
cocos2dx 3.x simpleAudioEngine 长音效被众多短音效打断问题
查看>>
存储(硬件方面的一些基本术语)
查看>>
观察者模式
查看>>
Weka中数据挖掘与机器学习系列之基本概念(三)
查看>>
Win磁盘MBR转换为GUID
查看>>
大家在做.NET B/S项目的时候多用什么设技术啊?
查看>>
Java SE和Java EE应用的性能调优
查看>>
Android设计模式系列--原型模式
查看>>
免费的论文查重网站
查看>>
C语言程序第一次作业
查看>>
leetcode-Sort List
查看>>
中文词频统计
查看>>
了解node.js
查看>>
想做移动开发,先看看别人怎么做
查看>>
Eclipse相关集锦
查看>>
虚拟化架构中小型机构通用虚拟化架构
查看>>
继承条款effecitve c++ 条款41-45
查看>>
HTML+CSS学习笔记(九)
查看>>