QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 4862|回复: 6
打印 上一主题 下一主题

POJ-1006问题

[复制链接]
字体大小: 正常 放大

2

主题

3

听众

16

积分

升级  11.58%

该用户从未签到

跳转到指定楼层
1#
发表于 2010-10-26 23:30 |只看该作者 |正序浏览
|招呼Ta 关注Ta
POJ-1006
$ U1 v8 C' |0 ]/ d* ^* o
+ }2 d$ Y' y* |5 ]在本地VC6.0下测试,得出正确结果, 为什么提交后总是Wrong Answer
0 x7 [: L& F( X  v+ _0 `
# d! G! G9 b: X  w现将代码贴出,请帮忙看看:0 r# E9 ?" B* g9 ]& H
  1. #include <iostream>, O2 m5 @0 t: ?
  2. using namespace std;
  3. 0 @! Z! I, _3 E
  4. #define PH      0
  5. # \' k- H* R( I% _6 s) o) [( ?
  6. #define EM      1$ s9 F- J6 X2 y' C\\" X. ]
  7. #define IN      2  ~# w! y$ D' {4 y
  8. int get_Top(int days, int kind);
  9. ; F6 W( K: m1 y! W, V  H: f
  10. int triple(int ptop, int etop, int itop, int cur);
  11. . s: n' |$ G/ y$ W4 f) c
  12. bool is_Integer(float n);
  13. : c  W/ U0 t5 _7 N# x6 S* M
  14. int main()
  15. ! F. s: z- W9 r: ?
  16. {
  17. \\" t- H! J6 ^1 m  ]! D8 X
  18. int ptop,  etop,  itop;
  19. # T, ?. k9 j) y) Q
  20. int pdays, edays, idays, curdays;' ]( }( T8 U/ s$ G9 k\\" }
  21. int count =0;
  22. & T! G. ?1 R3 n2 M  U$ j

  23. : f/ U0 ^+ N  ?! @  c4 V
  24. while(cin >> pdays >> edays >> idays >> curdays)8 r, h, z6 M\\" _2 b
  25. {/ }  a. W* c) D\\" e) o+ W
  26.   if(pdays==edays&&pdays==idays&&pdays==curdays&&pdays==-1)
  27. 3 J! J7 b: [7 z: z0 @$ i
  28.    break;
  29. 0 {# ?' o* s5 F5 n3 Z
  30.   count++;
  31. - R3 H* \4 }! |5 ?\\" ?5 G- e+ f
  32.   ptop = get_Top(pdays,PH);8 c2 _' U% H: f3 @# j8 A
  33.      etop = get_Top(edays,EM);% z\\" j7 f' @4 ]2 O. b$ r
  34.      itop = get_Top(idays,IN);3 s' q6 H5 ]# s+ X) j\\" J
  35.   cout<<"Case "<<count<<": "<<"the next triple peak occurs in "<<triple(ptop, etop, itop, curdays)<<" days.";4 X: r0 C4 A5 ~4 G
  36. }
  37. , q- W  h+ j! E$ q/ P3 n! Z

  38. + O7 x3 y) ~+ [
  39. return 0;7 j$ Z( a4 |3 M! {
  40. }
  41. . U- [7 N- v4 K- h\\" W% ^\\" R
  42. int get_Top(int days, int kind)
  43. \\" l1 z4 t) ]8 k- D( k7 ~% u4 O
  44. {9 r, A$ S* L  K% E\\" e
  45. switch(kind): [1 N6 P* m\\" A2 n3 R% n
  46. {8 j# F. z  n5 a
  47. case 0:
  48. / i6 Q% R9 v! l$ e# Q$ b
  49.   return days%23;
  50. 6 @7 ^& F8 y) Q/ _& `5 E
  51. case 1:8 T' Z5 a- v& J! ?/ U) z
  52.   return days%28;\\" j3 R% [7 F$ D
  53. case 2:  {; n9 }- P+ A1 t1 T  x
  54.   return days%33;+ j; H; ]9 f# M6 W% H4 K: c/ q
  55. }  R6 ?% H+ {. G\\" T
  56. return 0;
  57. ; C' b6 l8 B\\" t+ e$ `; c' c% S3 B
  58. }! E\\" H: \1 x' [7 @) l  o

  59. 2 m+ b, _5 s6 L& ~4 T- C
  60. int triple(int ptop, int etop, int itop, int cur)9 i; D% Q( Y8 G5 v: E\\" V2 J
  61. {0 T! R. S; P0 K/ R; C
  62. float x, y, z;
  63. ) H. X$ u. B- K1 a% I( e
  64. int m1   = etop-ptop-5,! n\\" |; p9 M& C- K) Y. |
  65.   m2   = itop-etop-5;. q# |/ O: C. f, ?7 q\\" R
  66. int temp = 0;* Z: y2 @& m& O5 ]. }* u
  67. for(z=2;  (itop+(z-1)*33) <= 21252;  z++)! g3 t& Y/ f\\" r: U
  68. {6 B5 i; P\\" H4 p' b- G( Y
  69.   temp = m2 + 33*z;0 ?, Y9 u8 I5 [
  70.   y = (float)temp/28;
  71. 8 _* G5 j* y' X% {
  72.   x = (float)(m1+temp)/23;9 A. K, T1 ^# @
  73.   if(x>0 && y>0 && is_Integer(x) && is_Integer(y))7 z' u1 c! [\\" F$ ~
  74.    return itop + (z-1)*33 -cur;5 \4 L; v) _6 M/ O( l* g
  75. }
  76. + W' [, U4 L6 I5 _  x1 F' A7 ]) p
  77. return 0;
  78. - r5 ?2 |! j. ?( b- c
  79. }
  80. . ^& a0 z0 d9 w$ N3 F

  81. 3 E$ I4 I\\" d6 C4 j+ ?\\" Q+ b% v7 `
  82. bool is_Integer(float n)8 x. C\\" b, Q( G  {% r: q' r
  83. {' E& o7 P9 X0 T, [/ u( R- l\\" Q# _; O% Q
  84. if( (int)n - n ==0)
  85. , a. Q9 z+ L+ u$ G8 T
  86.   return true;
  87. ' w) B2 f- ]* ?7 h  t\\" I: L* e
  88. else
  89. 5 @  h; d! l+ E5 Y3 O3 x' Q2 t
  90.   return false;+ |0 a& g0 M1 {' {3 `2 X' I- v\\" C
  91. }
  92. $ G. o: @1 l5 ?+ j

  93. 7 ?& e\\" W3 p$ u
7 ]& o* r/ R8 w: v  e% p
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信

9

主题

3

听众

142

积分

升级  21%

该用户从未签到

群组计算机考研

回复

使用道具 举报

39133120 实名认证       

10

主题

4

听众

1045

积分

  • TA的每日心情
    开心
    2014-9-6 09:56
  • 签到天数: 209 天

    [LV.7]常住居民III

    自我介绍
    希望和大家交流学习!

    群组小草的客厅

    群组数学专业考研加油站

    群组数学建摸协会

    群组数学建模培训课堂2

    回复

    使用道具 举报

    2

    主题

    3

    听众

    16

    积分

    升级  11.58%

    该用户从未签到

    回复 ultra1989 的帖子
    5 a  k: P! y* u3 c4 U/ r* G
    $ l; }  l( k) R! @( S, V, o: I9 t1 [* h# |7 Y
        确实这道题使用剩余定理解效率太高了! 哈哈! 学习了!  我还没有看过数论方面的书! 以后肯定要看看  \& o8 j6 n  h' y  O

    ; O8 W! W# T& O+ x1 L: C, H/ w, o两个程序一对比,一下就体现出数学的强大力量! & r* Z: W! K, \2 x/ ~
    回复

    使用道具 举报

    39

    主题

    4

    听众

    2648

    积分

    小草,小草,小。。。。。。草。。。。。。

    升级  21.6%

  • TA的每日心情
    开心
    2016-2-19 16:37
  • 签到天数: 134 天

    [LV.7]常住居民III

    发帖功臣

    群组小草的客厅

    群组数学建模

    群组Matlab讨论组

    群组数学建模培训课堂1

    群组全国大学生数学建模竞

    回复

    使用道具 举报

    qbist 实名认证       

    2

    主题

    3

    听众

    304

    积分

    升级  1.33%

    该用户从未签到

    自我介绍
    一个对未来充满信心的阳光型男孩!

    新人进步奖

    回复

    使用道具 举报

    ultra1989 实名认证    中国数模人才认证   

    20

    主题

    65

    听众

    2071

    积分

    ACMer

    升级  2.37%

  • TA的每日心情
    开心
    2015-2-25 23:29
  • 签到天数: 240 天

    [LV.8]以坛为家I

    新人进步奖

    群组Linux推广

    群组Matlab讨论组

    群组数学建模

    本帖最后由 ultra1989 于 2010-10-27 08:54 编辑 3 l" s" A8 m9 E. t
    * D9 a; L+ r% i* h
    用float可能会有精度问题用中国剩余定理求解3 ?2 e+ d5 V* m
    参考程序:$ u# q1 W7 @$ Z# h; s: p
    8 V2 Y( N1 [# w. C, o. ]
    #include<stdio.h>- f$ I3 A8 w- H" j
    int main(){
    + w6 E4 Y7 m6 }/ M8 d   int a,b,c,m,n,i,d=1;$ X' c- J3 u' J6 N1 G: m6 Z
       while(scanf("%d%d%d%d",&a,&b,&c,&m)){' H% @( {9 D" x' I( {) B
    ! B, I1 W! z: J- [
    if(a==-1&&b==-1&&c==-1&&m==-1) break;
    . h, h8 T6 m* V2 q' e4 s& {3 F9 }! f$ l6 |7 q9 e8 h' ]. a) k3 G! H
    n=0;
    1 i7 I7 I0 h& ~9 A7 h1 H. |- V! o0 K5 I5 k2 a  [  B9 @# [
    i=(5544*a+14421*b+1288*c-m+21252)%21252;
    ) x1 U9 K/ E8 t7 s" c; W* Q3 J% N/ C
    ' y6 D- i; P: S* O- \: r, _0 P( Q, _if(!i)/ ?6 Q  C  ]  V% x4 c5 @

    4 d3 O1 r4 ?$ g- ?i=21252;' f- @8 o" w* F' L
    5 r* [/ |$ r4 s0 p2 L+ r/ I
    printf("Case %d: the next triple peak occurs in %d days.\n",d++,i);" {# L1 i& ?4 I% c* A- ?# H: @9 N! P

    ! N% ~" B: W' c' Q( M   }1 B  Z* \3 w# K9 f, w& I

    * t* B$ Y8 w; Z% x$ Kreturn 0;; {! U6 p+ E1 ]2 F9 X
    }
    $ z7 S& u) b1 Q6 C
    ' D; D1 v, A0 H( p* c) ]
    Once a ranger, forever a ranger!
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-8-8 14:59 , Processed in 0.512919 second(s), 87 queries .

    回顶部