- 在线时间
- 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
0 Z! u2 m: ]" r5 Y
/ {. k5 t y' K( ]5 R# ^ ~在本地VC6.0下测试,得出正确结果, 为什么提交后总是Wrong Answer
: v. h" s1 k W; B+ c8 n" ^4 u) x1 @" E1 J! F8 c
现将代码贴出,请帮忙看看:
* }# |% ~7 t; q, M) V - #include <iostream>
- * H8 i' F0 Y! D8 j+ ` C) J
- using namespace std;0 D7 Y$ ]- ?* O3 O: f
- #define PH 0+ w U3 ?: K( z. P' T7 I
- #define EM 14 n% a; i' u/ o* T, q0 t( a7 p) F
- #define IN 2
- # e- [5 f# e; s6 { |
- int get_Top(int days, int kind);; D) m7 }7 ?0 [\\" ?. z1 f% N# z- K
- int triple(int ptop, int etop, int itop, int cur);1 F3 o# A$ E/ _$ Y8 Q( i\\" b6 q
- bool is_Integer(float n);
- # r9 `8 q1 t\\" ^9 q% \
- int main()
- 1 _/ u& ~ [8 `4 u ~9 o+ d2 }' ~9 A
- {3 S5 t# c7 f- p$ g7 l0 ?: h) S8 e8 w& }, _
- int ptop, etop, itop;* z) ]+ P$ q# T- F
- int pdays, edays, idays, curdays;' z6 A* G/ a0 h3 C: t
- int count =0;) ]0 Y\\" U+ a8 m9 ~# }% z
- ( W, N$ v5 f/ g/ D7 H; l
- while(cin >> pdays >> edays >> idays >> curdays)
- 4 u7 c& `/ e% j
- {
- ! S N& U( t7 W* D6 U6 T% x
- if(pdays==edays&&pdays==idays&&pdays==curdays&&pdays==-1)6 g- t2 w3 y) [\\" d* Q/ E
- break;
- 9 ^8 o4 d. Q) [5 N) d
- count++;\\" j0 Q- b- Q# i4 [; f+ J
- ptop = get_Top(pdays,PH);1 I$ @+ H) @2 T0 u* q
- etop = get_Top(edays,EM);
- : S( g8 ~2 c! M3 _
- itop = get_Top(idays,IN);
- 7 P7 W/ F8 V! |# C, w& w* ~# U
- cout<<"Case "<<count<<": "<<"the next triple peak occurs in "<<triple(ptop, etop, itop, curdays)<<" days.";, j8 u+ I2 K- y u
- }/ O+ f\\" u8 }\\" q9 x0 I. W
- ; R0 f2 e& m, p; j2 G/ ]4 f0 m
- return 0;
- ! e: @/ Y1 ^/ Y- J
- }
- # h4 j: ~/ B3 y
- int get_Top(int days, int kind)- @4 x! v' _- i
- {( g* w4 _' o9 L- D, d5 g8 A' G, {. f
- switch(kind)
- % c ~. ^\\" J! o' N1 c
- {
- ( i9 G9 R' `5 Z* b
- case 0:! a1 h3 {( v, ?
- return days%23;
- , W4 e8 T5 Y: {2 K\\" E- V5 w1 \
- case 1:; ?; R* \6 N$ O0 x\\" M% F
- return days%28;
- . L1 z( d& `2 u
- case 2:
- , h C) C! {$ X; I3 Z* C
- return days%33;
- ; T$ x$ o3 b+ p9 D5 P l1 _+ e* A
- }: T; U7 o: V9 }( V# |2 A
- return 0;+ ?$ f: B/ J5 ]4 @5 E
- }/ j3 P: u# ~/ N( f I
- 9 i+ o! k5 M5 S8 H& c
- int triple(int ptop, int etop, int itop, int cur)
- ' J+ {7 ~, Q4 r e7 D3 e' e
- {
- 7 `& E1 }+ y2 y' c- |9 p
- float x, y, z;6 y+ t! f4 V0 A/ D& L2 C
- int m1 = etop-ptop-5,
- . c! r4 y# z! C% D7 s$ M ]+ _
- m2 = itop-etop-5;: _# ?3 h2 U\\" n& _) r
- int temp = 0; [& p) O& P {2 n) `/ T
- for(z=2; (itop+(z-1)*33) <= 21252; z++)
- \\" ^7 M* {& v, n) \( v
- {
- ; b* y0 |, h \6 c9 ~7 z) V
- temp = m2 + 33*z;
- ! V* T7 d; [9 e6 H
- y = (float)temp/28;
- * ? `7 M6 T) I3 C
- x = (float)(m1+temp)/23;
- \\" [- }- y1 A( Y& v* `( g\\" u: Y) G9 F' f
- if(x>0 && y>0 && is_Integer(x) && is_Integer(y))
- ( D) D3 @, T* p
- return itop + (z-1)*33 -cur;0 L# _5 X\\" ?* }5 g O& L& q# `$ }
- }
- 1 g/ s8 N- J# o& X
- return 0;
- ; M+ j0 T/ s9 H
- }3 M) w' |- f4 V! R- n: c
- 2 _1 y* G% f) x0 a
- bool is_Integer(float n)
- 0 _/ p, N, ^, R' {1 s
- {
- 9 _3 b( B: i1 i0 M7 c/ D
- if( (int)n - n ==0)
- 9 f& M2 P! |& C7 J \
- return true;
- 6 n+ \( }! o0 g# ^/ o) p
- else
- , q1 {) B# K0 \& X I
- return false;
- ; `) D$ K1 c: D& m6 Y% `+ n5 }0 X
- }
- / k/ @5 J\\" e( U6 M% P' J6 v: \
- 2 Z9 Z* {2 k7 w8 X- z0 X7 g' g& p
* F6 H( f p9 V5 h! B
|
zan
|