1 条题解
-
0
C :
#include "stdio.h" int main() { int p,e,i,d,j,k=1; while(scanf("%d%d%d%d",&p,&e,&i,&d)!=EOF) { if(p==-1&&e==-1&&i==-1&&d==-1) break; for(j=d+1;j<=21252+d;j++) { if((j-p)%23==0&&(j-e)%28==0&&(j-i)%33==0) { printf("Case %d: the next triple peak occurs in %d days.\n",k,j-d); k++; } } } return 0; }
C++ :
/*中国剩余定理(孙子定理) 在中国古代著名数学著作《孙子算经》中,有一道题目叫做“物不知数”,原文如下: 有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何? 即,一个整数除以三余二,除以五余三,除以七余二,求这个整数。 中国数学家秦九韶于1247年做出了完整的解答,口诀如下 三人同行七十希,五树梅花廿一支,七子团圆正半月,除百零五使得知 这个解法实际上是,首先利用秦九韶发明的大衍求一术求出5和7的最小公倍数35的倍数中除以3余数为1的最小一个70(这个称为35相对于3的数论倒数),3和7的最小公倍数21相对于5的数论倒数21,3和5的最小公倍数15相对于7的数论倒数15。然后 233便是可能的解之一。它加减3、5、7的最小公倍数105的若干倍仍然是解,因此最小的解为233除以105的余数23。 附注:这个解法并非最简,因为实际上35就符合除3余2的特性,所以最小解是:最小解加上105的正整数倍都是解。*/ #include <stdio.h> int main() { int p,e,i,d,n; int num=1; while(1) { scanf("%d%d%d%d",&p,&e,&i,&d); if(p!=-1) { n=(5544*p+14421*e+1288*i-d)%21252; if(n<=0) n+=21252; printf("Case %d: the next triple peak occurs in %d days.\n",num++,n); } else break; } return 0; }
- 1
信息
- ID
- 1485
- 时间
- 1000ms
- 内存
- 32MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者