QQ登录

只需要一步,快速开始

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

POJ-1006问题

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

2

主题

3

听众

16

积分

升级  11.58%

该用户从未签到

跳转到指定楼层
1#
发表于 2010-10-26 23:30 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
POJ-1006
' a* P8 u+ Q) j7 Q
, Q1 c2 Q: r" o" X& F5 Z/ f在本地VC6.0下测试,得出正确结果, 为什么提交后总是Wrong Answer
! `/ a0 G& _7 d# i3 ?" D$ ]4 Q( a; ~
) f7 F0 @" d& w* C3 n; H# u# V现将代码贴出,请帮忙看看:
, V- D: C# ]' ]) L% {8 m' e2 a
  1. #include <iostream>
  2. 6 a: o) N' G5 Z' p  S5 N
  3. using namespace std;\\" Z3 Y* f- T# a7 R2 `# R+ t& p
  4. #define PH      02 V$ H; u1 ^\\" q2 n
  5. #define EM      1
  6.   ^6 N4 Z' e0 z
  7. #define IN      2
  8. : R7 |\\" e! U\\" i, r- `. g
  9. int get_Top(int days, int kind);* d' Y& }, D% M9 M, P. q\\" z# B
  10. int triple(int ptop, int etop, int itop, int cur);. U* ?4 ~1 j8 x
  11. bool is_Integer(float n);
  12. \\" n. C3 W& x) {; P/ _1 J
  13. int main()( g) ^) x\\" Y( Y6 ?1 r( e' W4 y
  14. {  G8 T; E- L4 H6 X; k* y
  15. int ptop,  etop,  itop;7 |9 e2 ~2 d: J5 h* I
  16. int pdays, edays, idays, curdays;
  17. 9 h3 s* D# Y# h3 N# o# h\\" I
  18. int count =0;4 q% B+ Z\\" c* v

  19. + r\\" @- A0 q- i) c- a
  20. while(cin >> pdays >> edays >> idays >> curdays)$ P% v/ z) l* R( c% [
  21. {
  22. ! ?& O) f' b' @\\" b  [/ z\\" T
  23.   if(pdays==edays&&pdays==idays&&pdays==curdays&&pdays==-1)
  24. 1 ~, j  g/ v0 [8 f+ H& L\\" T1 ?
  25.    break;7 M! A& y* c  Z. [% H
  26.   count++;
  27.   R6 U7 A9 A/ a
  28.   ptop = get_Top(pdays,PH);
  29. \\" N$ ?& h, \( I( M6 i
  30.      etop = get_Top(edays,EM);; c* e8 X5 L7 Y0 L; ?
  31.      itop = get_Top(idays,IN);
  32. 7 c2 |. O9 ]3 t8 u+ |! e9 y: C
  33.   cout<<"Case "<<count<<": "<<"the next triple peak occurs in "<<triple(ptop, etop, itop, curdays)<<" days.";  X/ W8 G: N8 y! d. T' c
  34. }9 p\\" B$ e# `; A! U% o3 i

  35. $ X2 S5 m2 e1 S+ q
  36. return 0;
  37. : `% f/ X8 U; P: |7 m
  38. }! v  ]# G, F( N; d
  39. int get_Top(int days, int kind)
  40. 9 A8 u, |. K6 m1 G. e. Z, e# b4 Q
  41. {+ v' ]' P$ B7 n' |
  42. switch(kind)
  43. : @. }9 F- m! S1 H) D
  44. {, D9 d& |4 g, n. O6 o' o/ g
  45. case 0:
  46. / s* @! E& h0 o+ Z5 o: F( ?
  47.   return days%23;$ v  h+ R5 ]( [. R! Q% j
  48. case 1:, g\\" b) @( b5 r( H\\" f
  49.   return days%28;3 ]0 Y& D% F* |' S, N& b9 l
  50. case 2:
  51. $ _3 z& Y/ Y3 l
  52.   return days%33;: |% N% j\\" F5 ?6 M( b8 S/ T
  53. }
  54. + j) V& S8 S; O8 q. a
  55. return 0;
  56. 4 Y* H$ C+ w5 O1 [3 R) [9 ~
  57. }8 p* y5 l. z( R. R7 @  C' W
  58. 9 q' c/ J5 `/ r- j. m) k! q
  59. int triple(int ptop, int etop, int itop, int cur)
  60. ' d0 m* _& ^0 Y( m2 y
  61. {: L8 }, d$ w# Q% u7 w5 V
  62. float x, y, z;
  63. ' g7 Z, R1 q; ~! n7 w7 @; m
  64. int m1   = etop-ptop-5,
  65. : u  m7 R( t3 ~, I! A, ~' `( `6 B
  66.   m2   = itop-etop-5;
  67. ; s, Z4 m8 r; h
  68. int temp = 0;
  69. : C* f2 I. A8 y: E
  70. for(z=2;  (itop+(z-1)*33) <= 21252;  z++)\\" U* w8 p$ s% a, w  e4 {
  71. {; I7 Y4 {6 e& B* o$ m
  72.   temp = m2 + 33*z;8 G4 e( Z5 r$ M0 v) [\\" g3 k
  73.   y = (float)temp/28;
  74. : u7 V5 s: H3 C+ I& A# a+ e% P
  75.   x = (float)(m1+temp)/23;# ~/ l  V/ w3 y$ S2 Z9 O. B: S( m  H+ U
  76.   if(x>0 && y>0 && is_Integer(x) && is_Integer(y))
  77. . T7 Z3 ?' E' V; B
  78.    return itop + (z-1)*33 -cur;
  79. 8 G/ H7 x\\" w5 y. Q3 E. |/ q
  80. }
  81. ; \; f% i* G2 X% A\\" x
  82. return 0;
  83. ) ^: t1 l; H; w$ Y3 ^- W# J( B# l
  84. }
  85. * l: |9 Y' r' U  F0 \, \$ N0 b\\" M

  86. 0 e! i2 g: s5 F$ E
  87. bool is_Integer(float n)
  88. $ z& I; R. E) A/ g  l2 W2 O2 \- S
  89. {
  90. 1 |  D& k, v! G/ B* J. C
  91. if( (int)n - n ==0)
  92. & A4 n0 P/ |3 d2 D& s
  93.   return true;
  94. 9 q6 @* j' b: t( U2 i! M/ z
  95. else: B& g  h* U4 P
  96.   return false;; c7 p( [. v9 O& N
  97. }4 B$ U( y  N3 P( K4 q# ]* U' z

  98. ( n7 n$ H, e& o- l1 d

5 p6 i1 E: `# i) R: U9 s: D
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 编辑
    2 b4 {7 F2 j$ H( @8 Q9 [3 S4 @7 c  [0 ]) }! A; W
    用float可能会有精度问题用中国剩余定理求解1 s- Z! U, o* o# Q
    参考程序:
    , ^/ p: s( W* U( Z, p( ]3 R7 e: y: F2 U; \, \
    #include<stdio.h>1 S9 f3 J0 {2 H( M* D
    int main(){ ) K* `5 Q: J4 l( \3 s9 |3 ?% y
       int a,b,c,m,n,i,d=1;
    ( x; v5 Z% k! i0 w   while(scanf("%d%d%d%d",&a,&b,&c,&m)){; C3 S3 @8 i) C" K

    + I3 w& V4 R! T6 @+ Q9 n& N+ gif(a==-1&&b==-1&&c==-1&&m==-1) break;
    ' D& s5 U" C2 |' I( b3 d9 d
    2 @1 X% z/ A3 n% T1 a; Y: Kn=0;
    6 [7 q. V- p9 x) @+ f, U
    ( a5 }  E6 C% a' V' N, G2 w& `& {i=(5544*a+14421*b+1288*c-m+21252)%21252;
    . u6 v' Q! K2 t; M6 b! A& |: j0 |+ h0 v. H
    if(!i)
    ' ~5 I& v" ~5 B2 C, x4 g3 y4 p7 F6 a5 M1 z
    i=21252;
    3 u6 P& r! Q; x, P% S
    $ N: b6 k/ z# G: b0 T8 Aprintf("Case %d: the next triple peak occurs in %d days.\n",d++,i);
    , y4 |' X0 }- s: I
    " K2 e% d5 S; U& @# r* i0 F   }$ A: N! J7 k0 O

    & C' _5 l1 b+ Q' Kreturn 0;
    + X" G* o* u3 K$ o2 f* e}
    8 ~4 M' h) J  L; W: \
    2 B  ^! w2 V0 R/ a4 l
    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 的帖子
    ) H' A! n! J, l  k  S& V& j3 S) A  b6 O

    - e) i8 E. k2 w+ W4 R% b! @( u    确实这道题使用剩余定理解效率太高了! 哈哈! 学习了!  我还没有看过数论方面的书! 以后肯定要看看
    3 u0 x2 S  n, y1 v: a' g; _
    2 ~7 P% K  ^7 e6 A两个程序一对比,一下就体现出数学的强大力量! % D0 [- K" q4 S$ k; V" J9 G7 Q
    回复

    使用道具 举报

    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-30 01:06 , Processed in 0.498091 second(s), 86 queries .

    回顶部