- 在线时间
- 0 小时
- 最后登录
- 2010-11-12
- 注册时间
- 2010-8-27
- 听众数
- 3
- 收听数
- 0
- 能力
- 0 分
- 体力
- 46 点
- 威望
- 0 点
- 阅读权限
- 20
- 积分
- 16
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 5
- 主题
- 2
- 精华
- 0
- 分享
- 0
- 好友
- 1
升级   11.58% 该用户从未签到
 |
POJ-1006& `) z1 v. C4 X4 T
: x9 B( d) n# p) W/ b3 D1 n/ x在本地VC6.0下测试,得出正确结果, 为什么提交后总是Wrong Answer
# m9 A U- s$ ^& U1 M* \3 w8 G7 p
) s A2 i! z8 k* r Z8 _现将代码贴出,请帮忙看看:
2 O* b4 H+ c( k" J$ Q M7 j6 \ - #include <iostream>+ d2 a7 [8 J( A+ b* F( @# e
- using namespace std;# S; y- n/ g' p
- #define PH 0& C3 H# ]6 f: z) k% }' t
- #define EM 11 e. O9 b( m {. J* \, ^% X
- #define IN 2/ R1 o! S* |% p+ r; s
- int get_Top(int days, int kind);7 T6 l0 L u# t, U% l6 h2 g
- int triple(int ptop, int etop, int itop, int cur);1 i5 t# h3 P, `* ~/ H0 f$ Q2 I
- bool is_Integer(float n);6 c% c* c$ S/ c2 S: K' T8 o& u
- int main()
- 4 P- M* s% S6 @, X' P9 s B
- {
- 3 g1 |% Z$ ]) r0 m R: f6 j
- int ptop, etop, itop;
- 1 o& o$ l3 G- j4 H. D
- int pdays, edays, idays, curdays;
- * v: Y; f/ H1 `9 k
- int count =0;
- * v J8 a% ]8 ~0 }- a: ^) A
- ! V& N+ Y7 i+ M$ ?! n9 j
- while(cin >> pdays >> edays >> idays >> curdays)
- 2 G% S2 {1 _; R/ H: n6 E3 u
- {% H1 Y/ a; ]$ k7 L5 h
- if(pdays==edays&&pdays==idays&&pdays==curdays&&pdays==-1), w0 x9 N) l0 d\\" m
- break;
- - t2 M0 l' |# @& E3 @+ |
- count++;( ]% I9 a7 k! }8 d1 y0 x5 G# t
- ptop = get_Top(pdays,PH);1 c+ E k9 G, I0 O) U+ I
- etop = get_Top(edays,EM);
- ~9 E* t9 C/ [# M* f* Z
- itop = get_Top(idays,IN);2 v7 ]# O+ E+ f$ ^9 }1 p6 y
- cout<<"Case "<<count<<": "<<"the next triple peak occurs in "<<triple(ptop, etop, itop, curdays)<<" days.";( H0 j# q$ V/ W( N. Q6 ?, c
- }
- 1 \' Y' v( }0 ]! X' z1 b7 Q\\" O' }9 H
-
- & q. ]; a, ^, y3 S, c1 X# k
- return 0;
- 6 h' O0 c8 m) |; V% S* c. @
- }9 x& I* u9 T) J; p% L7 m
- int get_Top(int days, int kind)1 t; u2 F. n: J# w/ h
- {
- $ B8 t! s- x# T: k
- switch(kind): }) T, u6 C! U# Y# h5 {# Y; U; o$ e
- {
- & W. f- e, @' C1 E
- case 0:
- . q7 l3 M( c9 _* S
- return days%23;
- 4 F) W1 S) K! H. o5 Q2 C1 a
- case 1:1 e3 f& r+ X. ]
- return days%28; }% J9 G) J2 ^8 H! C/ a$ v
- case 2: U/ ^+ T- t0 Q
- return days%33;
- ; W I& }# _- M2 w- r4 O! w
- }1 m4 \) n' [6 ?: D
- return 0;1 c# ^+ l4 k3 q# H& p! r% a
- }
- ! P Z8 ^' n0 J( a
- / i: f! Q* n9 [7 L ~5 |
- int triple(int ptop, int etop, int itop, int cur)% S+ i: J\\" x I. R8 f0 k' d
- {+ _9 }+ e1 T\\" `
- float x, y, z;
- + e( r$ P* G7 `+ Z* ^) s* l2 X6 Z) m
- int m1 = etop-ptop-5,
- \\" g. j) H: ]' F. {
- m2 = itop-etop-5;& ?; d4 ?7 C1 h- D6 s4 c$ B: P/ x
- int temp = 0;7 h7 e; d% N% d8 ?% Z% |! E
- for(z=2; (itop+(z-1)*33) <= 21252; z++); N# E! v) W& d
- {* I1 `3 K' l& l1 c3 n
- temp = m2 + 33*z;
- 0 d$ R) G9 A6 _
- y = (float)temp/28;
- $ {; d7 e2 _7 W, x( ^% l
- x = (float)(m1+temp)/23;
- \\" M4 D5 e4 [' d# ^% V7 M4 \- P
- if(x>0 && y>0 && is_Integer(x) && is_Integer(y))9 e6 R( j+ n: Z0 m) m' `
- return itop + (z-1)*33 -cur;; U& b# P1 a: ^8 N H! `
- }# [( j. z; ^8 B
- return 0;
- 7 f: v( z! V1 A+ K- H
- }
- + `' x9 y\\" K\\" x4 |
- 4 Y\\" E3 `, Y* Z, E6 f% o- G/ K) g5 C8 J
- bool is_Integer(float n)
- 4 N) q a& X! t) q' p
- {
- 8 P+ f9 J2 M, V' T
- if( (int)n - n ==0)- m1 [/ V) s! T8 b( u7 W
- return true;+ b5 f3 q* {0 V\\" x\\" [! a% [
- else
- : {% _5 B\\" c4 i4 @* j9 X& F
- return false;. {4 ~& d9 h5 G
- }3 }\\" _( U9 j! a! U
- % b+ X) n\\" d+ z2 [: f2 w
4 O' @" s0 C7 h7 }2 h1 B! p
|
zan
|