QQ登录

只需要一步,快速开始

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

POJ-1006问题

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

2

主题

3

听众

16

积分

升级  11.58%

该用户从未签到

跳转到指定楼层
1#
发表于 2010-10-26 23:30 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
POJ-1006' Z5 |# ~# j8 M( A/ d1 J
3 D3 f8 B" P( P( s' G
在本地VC6.0下测试,得出正确结果, 为什么提交后总是Wrong Answer
( }+ z& o3 E/ N' g2 i( d- N$ A8 v! G: v& D4 }2 T
现将代码贴出,请帮忙看看:1 i/ A/ Z& o2 R2 J. t4 ^5 p
  1. #include <iostream>4 Y2 p\\" k, ?% [' O/ t5 H; [
  2. using namespace std;
  3. & D+ e) B! r* g- d; O$ q( w
  4. #define PH      00 s5 l4 N. K5 P, V
  5. #define EM      1
  6. - O1 ?0 O( u2 K$ h7 _$ j! {+ R# p
  7. #define IN      2. h8 K* u* T& T\\" {
  8. int get_Top(int days, int kind);( m# p' O* O- \+ F9 O
  9. int triple(int ptop, int etop, int itop, int cur);
  10. : J* g' L, J- @\\" Y6 @' d
  11. bool is_Integer(float n);\\" ?7 Y  k1 \4 K8 V, q& A
  12. int main()7 Q; t$ z, f! q% \' l
  13. {. ]; f8 e! ?& B% M% g/ D5 @
  14. int ptop,  etop,  itop;
  15. ; N\\" n& F+ O4 T7 Y  q8 q8 r2 a
  16. int pdays, edays, idays, curdays;/ N) e+ q' o* [
  17. int count =0;1 K  q  _, |; Y, W. B! X

  18. 6 V! C% o3 \# s\\" z\\" c
  19. while(cin >> pdays >> edays >> idays >> curdays)
  20. 5 f5 B5 [( a, [
  21. {; k, h& W\\" p* g) f
  22.   if(pdays==edays&&pdays==idays&&pdays==curdays&&pdays==-1); d' U# Z: S! Y) x6 X  \/ Y! A# P7 {
  23.    break;
  24. ) d9 \- r; S' N+ b
  25.   count++;0 c\\" W  _' B8 e$ n
  26.   ptop = get_Top(pdays,PH);
  27. & Q  G3 p5 t/ P# ?; B  V
  28.      etop = get_Top(edays,EM);
  29. : e, }8 v3 i( i
  30.      itop = get_Top(idays,IN);; K1 {$ u- M: x/ p
  31.   cout<<"Case "<<count<<": "<<"the next triple peak occurs in "<<triple(ptop, etop, itop, curdays)<<" days.";/ j9 n2 O! E& Z
  32. }
  33. 7 a( s! y$ \  n' Q) W
  34. / {\\" R  E/ g3 N8 t! _
  35. return 0;0 U2 _2 s' @9 \3 P
  36. }+ }$ h0 }9 u8 w) u0 A- t; h- ]
  37. int get_Top(int days, int kind)
  38. 3 @8 @6 x$ N( b
  39. {; O! x* o  C6 @9 }# ]! e
  40. switch(kind)& a0 C* t2 E3 w2 T$ _: V5 e
  41. {: A  c0 O2 `* S
  42. case 0:
  43. 1 t$ M* h: v\\" ^7 Z& O; Z# k) v
  44.   return days%23;
  45. 7 h. G1 ^) U* o* ?/ P% u
  46. case 1:) a6 e/ A2 f$ P& O: V& h' [5 L
  47.   return days%28;
  48. - m; t7 M3 X; p5 |! U  z
  49. case 2:7 s6 K: f4 f! ~0 O$ d
  50.   return days%33;\\" }! w9 \) i8 t; E7 d' T. O
  51. }
  52. - s7 G. E- h$ t$ S9 a- ?
  53. return 0;  r% H# J\\" A, U, ]/ s
  54. }9 f9 @7 Z' N$ m) P
  55. $ a  Y* T( S& S2 S# X
  56. int triple(int ptop, int etop, int itop, int cur)
  57. $ N( f- ]$ `; a& x( U2 L0 |1 r
  58. {  |) o- L* ~6 ^8 L! a! a/ y$ d7 H
  59. float x, y, z;
  60. $ i0 a: b+ A. l# o' @
  61. int m1   = etop-ptop-5,6 T, \/ G. M, D
  62.   m2   = itop-etop-5;
  63. \\" K. T- e; G7 t$ O5 X& z7 c) {
  64. int temp = 0;
  65. ! H/ r8 F2 l1 ?. U9 F4 C8 Z
  66. for(z=2;  (itop+(z-1)*33) <= 21252;  z++)
  67. 9 R4 `) n: T7 M2 k
  68. {1 J- {2 {5 }9 l) \( ?* c
  69.   temp = m2 + 33*z;
  70. 8 |' [: O. o% L' m- @' Z4 q( U
  71.   y = (float)temp/28;
  72. * \$ C: I$ @( p) l1 `6 C
  73.   x = (float)(m1+temp)/23;
  74. 0 l. w- U% E6 f
  75.   if(x>0 && y>0 && is_Integer(x) && is_Integer(y))7 Z4 u$ t; _: n% B\\" W' r
  76.    return itop + (z-1)*33 -cur;) X( c6 r2 v: i, Z* }0 `5 T6 q3 K
  77. }' `8 Y( i, @, X8 K2 Q
  78. return 0;$ G( l/ Q+ S% N' K) o6 F+ P
  79. }
  80. \\" o9 s' J2 S  d+ X1 s

  81. \\" m4 s+ V; ?) R' E/ |; O
  82. bool is_Integer(float n)
  83. 3 }8 H* ]+ ]+ t6 h2 M
  84. {+ @. C6 c4 j- C- ]+ A( l
  85. if( (int)n - n ==0)
  86. ! Y) \& d: {4 n* u
  87.   return true;- }/ ~: R- W6 h
  88. else* Q. \' j3 ?: I1 T: x' b
  89.   return false;9 Q: r4 J! j0 c\\" B6 a
  90. }* {- F1 |, O5 G
  91. * D7 M$ i' J2 _$ Q. k' V! G

& n% B( u2 S2 E* X0 m9 ?
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
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 编辑
    , h* y, }4 a6 \2 `. t& g# R$ W( D% ~1 c
    用float可能会有精度问题用中国剩余定理求解6 |7 Q. m9 ]& Z* d; R2 W
    参考程序:  u; L3 A! H, d0 G" [5 w
    0 K- R! o. r! S4 L7 ~. V3 Z: ]. w9 W
    #include<stdio.h>
    5 S4 U7 J: U! \/ m" j5 Qint main(){ , V' c" M# E, ~& P# P
       int a,b,c,m,n,i,d=1;4 `/ W* O1 k+ I- O9 w9 }- i
       while(scanf("%d%d%d%d",&a,&b,&c,&m)){
    # P2 L  S) O! i. q0 ^# o" K0 w7 Y" G1 B8 ^8 X3 g# j
    if(a==-1&&b==-1&&c==-1&&m==-1) break;
    - e- J2 v2 |* T8 }
    6 r3 V+ K& h0 k0 x1 r. L5 w' Gn=0;5 d5 J, F8 L% e! e# N3 N
    ) K+ L- Z% _" J: \7 z5 a% H
    i=(5544*a+14421*b+1288*c-m+21252)%21252;
    0 Q9 R' r& }( N* N( n: @, x# {% p* v
    if(!i)* s# y$ X( X' @# R3 t( L0 A
    5 n  t6 g6 b6 E  S/ U
    i=21252;
    : z; }' `! Q( G: Z9 z4 A
    8 B! x2 k' r# W4 gprintf("Case %d: the next triple peak occurs in %d days.\n",d++,i);
    $ j% U7 k" T$ J  J# F, b/ L/ k4 w6 G
    % y2 I8 d- G' D5 _: E2 ?! W   }
    4 l6 e9 o* g+ c7 I7 S) F' n7 o7 b1 S9 R; G+ b6 A- g
    return 0;! ^; `4 T0 u; [2 p& G
    }7 k9 {9 x8 L1 y: r8 N; Z* c

    - [  I& j$ T. _% [
    Once a ranger, forever a ranger!
    回复

    使用道具 举报

    qbist 实名认证       

    2

    主题

    3

    听众

    304

    积分

    升级  1.33%

    该用户从未签到

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

    新人进步奖

    回复

    使用道具 举报

    39

    主题

    4

    听众

    2643

    积分

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

    升级  21.43%

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

    [LV.7]常住居民III

    发帖功臣

    群组小草的客厅

    群组数学建模

    群组Matlab讨论组

    群组数学建模培训课堂1

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

    回复

    使用道具 举报

    2

    主题

    3

    听众

    16

    积分

    升级  11.58%

    该用户从未签到

    回复 ultra1989 的帖子
    . {" c0 f& W' T# V% ]2 m2 K; u* J- b

    1 S/ c) J0 g% j4 i3 L% [2 `& d    确实这道题使用剩余定理解效率太高了! 哈哈! 学习了!  我还没有看过数论方面的书! 以后肯定要看看
    5 H- m0 _+ }# }/ A" O0 e3 @; Y4 u8 o+ e+ f
    两个程序一对比,一下就体现出数学的强大力量! " N( v. R9 R6 K" W; x! S7 _
    回复

    使用道具 举报

    39133120 实名认证       

    10

    主题

    4

    听众

    1045

    积分

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

    [LV.7]常住居民III

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

    群组小草的客厅

    群组数学专业考研加油站

    群组数学建摸协会

    群组数学建模培训课堂2

    回复

    使用道具 举报

    9

    主题

    3

    听众

    142

    积分

    升级  21%

    该用户从未签到

    群组计算机考研

    回复

    使用道具 举报

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

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2026-4-29 11:01 , Processed in 0.434936 second(s), 86 queries .

    回顶部