QQ登录

只需要一步,快速开始

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

POJ-1006问题

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

2

主题

3

听众

16

积分

升级  11.58%

该用户从未签到

跳转到指定楼层
1#
发表于 2010-10-26 23:30 |只看该作者 |正序浏览
|招呼Ta 关注Ta
POJ-10069 r0 r5 [. |; k( V4 k( K$ ?; s1 j

* o- y& r, j) [7 x& T/ H& @  r在本地VC6.0下测试,得出正确结果, 为什么提交后总是Wrong Answer& U9 {- O8 P8 E- V

) y1 `8 T; a# e现将代码贴出,请帮忙看看:9 M/ D  R9 z. X; B
  1. #include <iostream>6 |& R6 Y1 ?- A8 l# u\\" d
  2. using namespace std;
  3. 2 f* I  i% w! A
  4. #define PH      0) ^5 y: m0 H  N3 v: d: \1 E* K\\" K
  5. #define EM      10 [, I# D0 v. T: J6 V5 X7 y
  6. #define IN      2
  7. 3 s+ @, F5 g% P$ B2 y) b, _\\" @
  8. int get_Top(int days, int kind);
  9. ; e2 B1 K+ z7 t0 l% x
  10. int triple(int ptop, int etop, int itop, int cur);
  11. 8 G& H$ |! \6 Y' V+ F
  12. bool is_Integer(float n);
  13. ' x6 ~: c. w' q( C; Z/ K
  14. int main()
  15. 5 d. a  o: ~5 g( x
  16. {1 x  ^, S$ \* O* }: e! x
  17. int ptop,  etop,  itop;
  18. ) R7 r0 |# ?: e' z8 }
  19. int pdays, edays, idays, curdays;
  20. ( y; t\\" Z2 @, A. K. Y
  21. int count =0;
  22. 6 }# `  Z\\" V: g' ~
  23. ( }4 H) C4 J1 n  A( e, Y
  24. while(cin >> pdays >> edays >> idays >> curdays)
  25. ! @& c% |; v: o4 A$ a
  26. {
  27. 9 g! F# H1 B$ _9 H, w\\" Y
  28.   if(pdays==edays&&pdays==idays&&pdays==curdays&&pdays==-1)5 K6 x7 i9 X( F7 f( b
  29.    break;
  30. $ _, E  K! R4 F+ M- d! ~4 S
  31.   count++;0 f6 X  v' ~; a$ j: J3 `- \( B
  32.   ptop = get_Top(pdays,PH);
  33. + b& N1 n' r2 H% S, e8 a
  34.      etop = get_Top(edays,EM);; b( k6 x0 X' j  T$ z
  35.      itop = get_Top(idays,IN);6 L. O1 J7 d( {
  36.   cout<<"Case "<<count<<": "<<"the next triple peak occurs in "<<triple(ptop, etop, itop, curdays)<<" days.";
  37. ( T$ ?& N7 N, ~4 k
  38. }$ m) A/ b# H* W8 a& s( O
  39. & ]5 h  O( B1 V) g8 y
  40. return 0;
  41. \\" Q& s& ^/ y4 y$ Z
  42. }2 I/ L- t7 C% o( [
  43. int get_Top(int days, int kind)5 p* u! Y  ~4 d6 W7 A2 r4 K1 X3 Z
  44. {4 R% x( w0 h3 [! T% L+ u/ F
  45. switch(kind)
  46.   A. s/ u, P9 j& J' _6 p' N9 E6 W
  47. {
  48. $ V2 h3 U* r* J( i) ~$ O
  49. case 0:: a# M% Q! u; g, ^! [
  50.   return days%23;  \5 {8 h, k* q& y  `4 r  o
  51. case 1:& F% v# q% k6 x& ^0 X1 @. ?/ l
  52.   return days%28;3 s+ N# w$ R5 S' W- Y
  53. case 2:/ s( |5 _* O( P; }: B
  54.   return days%33;
  55. 0 B2 P* [9 |0 P, Z7 W
  56. }
  57.   }0 k: a: q% z( g7 @  _* F
  58. return 0;
  59. \\" @\\" `\\" {4 ?0 y* T4 r
  60. }
  61. - i* M) T8 w8 v% n$ b  s, b% q
  62. 7 K' D( L: w\\" {( k: S
  63. int triple(int ptop, int etop, int itop, int cur)
  64. ) e+ m. K9 Z  n, q# y2 _
  65. {% C% z$ C9 t- e7 A% _% X8 j9 X
  66. float x, y, z;7 i( U2 }$ {! H% B. V3 t9 c
  67. int m1   = etop-ptop-5,
  68.   o! g* a\\" O2 D3 U% j( Q' Y
  69.   m2   = itop-etop-5;, k/ Q\\" _9 s* p; w
  70. int temp = 0;/ ?5 ]2 U% f% L# D* @# J) m
  71. for(z=2;  (itop+(z-1)*33) <= 21252;  z++)
  72. % @; y% ^0 ?2 D) a4 n; _
  73. {6 Q7 ]\\" s# P5 I
  74.   temp = m2 + 33*z;
  75. 2 p\\" \% Y; ]5 N8 C5 `
  76.   y = (float)temp/28;: W5 H* R6 Q, S. Z
  77.   x = (float)(m1+temp)/23;
  78. ! _# c: {& Z# [+ `0 q0 C
  79.   if(x>0 && y>0 && is_Integer(x) && is_Integer(y))
  80. & c% w& |3 E: S6 B
  81.    return itop + (z-1)*33 -cur;/ X; h( H2 g& H* w4 o+ l- C) P  _
  82. }9 J. O# J# j8 T% c
  83. return 0;, t$ W3 V0 t3 E7 ~1 G2 W9 s# d) A: r
  84. }
  85. 5 m. _. e; H, j/ O/ g- N6 X% W) {
  86. ) t3 E+ D8 X- w
  87. bool is_Integer(float n)* I+ T& D( a4 g0 A\\" v
  88. {
  89. ; P# g2 m. T4 D. B# X' o
  90. if( (int)n - n ==0)
  91. / I9 M; e( o$ t- E
  92.   return true;$ r& }0 S& @3 X# K! }0 E8 Y; C( s9 V
  93. else
  94. / B% l# N. f2 z+ _- k
  95.   return false;
  96. 3 e9 R  P* O& X7 z
  97. }+ h- r6 P' f! Y2 `! a$ e2 t1 f6 W
  98. , W) U3 e6 h- B+ y( q/ S5 B
) j  L  t, C: Y1 g# N
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 的帖子
    + K% Q& |, M5 j2 E- x. y. H/ j" ^: n0 K/ q

    # ^( {9 a! R; K    确实这道题使用剩余定理解效率太高了! 哈哈! 学习了!  我还没有看过数论方面的书! 以后肯定要看看
    0 @6 k6 x# p, n: I/ d
    1 |( S$ Q" j! S- @9 I1 ?* W5 ?* K: E- x两个程序一对比,一下就体现出数学的强大力量! ) K2 p! G4 c. R5 x3 W3 _4 s
    回复

    使用道具 举报

    39

    主题

    4

    听众

    2605

    积分

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

    升级  20.17%

  • 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 编辑 4 @2 b  H) X- s. O) O

    " z! U/ }. y, K" h' X4 s4 S; Z9 T用float可能会有精度问题用中国剩余定理求解$ _) ^8 c" R9 Z8 \+ F7 @# I
    参考程序:
    4 I5 V0 e, J. r1 a  C
    8 C5 J8 D0 @& |$ v4 ]6 a#include<stdio.h>& V4 c9 u  T  f( P7 j: V0 n9 d
    int main(){
    & e  v* ^$ O. N$ E+ z4 c& {/ K   int a,b,c,m,n,i,d=1;. ?3 Q5 H' r! a3 z
       while(scanf("%d%d%d%d",&a,&b,&c,&m)){/ H+ B* r3 N, v
    * x+ h) u' i) |; q* Z: p  p, |& }) k
    if(a==-1&&b==-1&&c==-1&&m==-1) break;
    $ _# b/ K) j7 r6 s
    3 g9 a) O8 y( O) jn=0;3 y* J4 K- w0 h  s1 O2 y
    " x9 a3 @7 \' d% c; Q
    i=(5544*a+14421*b+1288*c-m+21252)%21252;# u4 @" o8 E- H3 s) D

    5 [9 {: O* g8 m: q/ o% z0 aif(!i)) @4 [* e- V$ }8 Q7 v
    9 D0 Q' U! {- n$ Q- Z+ v. h
    i=21252;
    $ q+ Q& ?' M; B5 n6 ]" ?( x. x0 `. m! J: |# G, \2 o
    printf("Case %d: the next triple peak occurs in %d days.\n",d++,i);
    ; T6 \3 |; e, t* e( e2 y1 t& v# N1 a9 K
       }2 N3 s& J3 i4 u0 R: D3 q

    ! @1 }! Y3 z9 C3 ?  g: kreturn 0;
    ; z# r9 U. K' d1 k" L. i& N}
    * ^4 T+ S. ]! K0 X4 R3 _$ t$ 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, 2025-7-13 10:45 , Processed in 1.275081 second(s), 87 queries .

    回顶部