我叫张小黑
张小黑的挣扎生活
posts - 66,  comments - 109,  trackbacks - 0

剩余定理,读题废了好长时间,看完题,又看了一遍算法段轮的31.5

 1#include<stdio.h>
 2#define N 21252
 3typedef struct node{
 4    int d;
 5    int x;
 6    int y;
 7void operator=(node b)
 8{
 9    d=b.d;
10    x=b.x;
11    y=b.y;
12}}NODE;
13NODE EXTENDED_EUCLID(int a,int b)
14{
15    NODE first,sec;
16    if(b==0){
17        sec.d=a;
18        sec.x=1;
19        sec.y=0;
20        return sec;
21    }
22    first=EXTENDED_EUCLID(b,a%b);
23    sec.d=first.d;
24    sec.x=first.y;
25    sec.y=first.x-(a/b)*first.y;
26    return sec;
27}
28int main()
29{
30    int a,c1,c2,c3,j=1;
31    int p,e,i,d;
32    NODE m1,m2,m3;
33    m1= EXTENDED_EUCLID(28*33,23);
34    m2= EXTENDED_EUCLID(23*33,28);
35    m3= EXTENDED_EUCLID(23*28,33);
36    c1=28*33*m1.x;
37    c2=23*33*(m2.x+28);
38    c3=23*28*m3.x;
39    while(scanf("%d%d%d%d",&p,&e,&i,&d)){
40        if(p==-1&&e==-1&&i==-1&&d==-1)break;
41        a=(p*c1+e*c2+i*c3-d+N)%N;
42        if(!a)a=N;
43        printf("Case %d: the next triple peak occurs in %d days.\n",j++,a);
44    }
45    return 0;
46}
前27行都是用来求c1,c2,c3的,真正这道题的数据处理只是在main函数的while循环
posted on 2008-02-23 11:20 zoyi 阅读(491) 评论(0)  编辑 收藏 引用 所属分类: acm

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


欢迎光临 我的白菜菜园

<2008年2月>
272829303112
3456789
10111213141516
17181920212223
2425262728291
2345678

常用链接

留言簿(8)

随笔分类

随笔档案

文章档案

相册

acmer

online judge

队友

技术

朋友

搜索

  •  

最新评论

阅读排行榜

评论排行榜