- 在线时间
- 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
* S3 Y1 w M7 ^ t$ i1 x. L/ T7 l* _. ^! f! W
在本地VC6.0下测试,得出正确结果, 为什么提交后总是Wrong Answer7 d/ M+ t5 ?7 H
! e" Y8 O* c" ?/ `7 f6 o9 B' [
现将代码贴出,请帮忙看看:
, _/ K) s4 f: M+ r* S: G# A6 q& |' K - #include <iostream>8 d\\" b3 x) k\\" m4 @
- using namespace std;
- ) J) x& V0 E0 R% t: l8 M
- #define PH 0
- % ~$ l. u1 j& a) U7 `9 N
- #define EM 1
- ! i+ E$ w9 F! `0 m. J
- #define IN 2! N* j0 n. B8 {) f3 V M
- int get_Top(int days, int kind);- q6 U+ \/ B/ o
- int triple(int ptop, int etop, int itop, int cur);( X% L6 @& u9 { r* R1 S
- bool is_Integer(float n);6 l H6 e7 m' n# E* V; k
- int main()
- / f; ^5 U2 P/ x; j6 u/ s
- {
- ( `2 D: \0 v\\" N8 D+ q9 \3 J7 ~\\" p
- int ptop, etop, itop;8 y# `& B- o3 c; N
- int pdays, edays, idays, curdays;
- 8 R1 C9 }9 ]5 u3 j* L! X& g) b
- int count =0;* k* h+ [ q ]8 Q$ U3 H
- ; l) x: P, P: J9 c/ B
- while(cin >> pdays >> edays >> idays >> curdays)( R# z) n, {$ E% v% H3 K0 P1 L; \
- {
- N0 @- w9 `# B
- if(pdays==edays&&pdays==idays&&pdays==curdays&&pdays==-1)+ H& T0 M1 e9 @: M C8 Y6 }! C/ o
- break;
- % b! u9 z% E6 E4 d% \
- count++;9 U4 @8 Y$ F1 b# }7 {+ U. z
- ptop = get_Top(pdays,PH);* I, | c# E- r( H+ V7 m) g' H
- etop = get_Top(edays,EM);
- $ {: }$ ]; L$ K
- itop = get_Top(idays,IN);
- 6 @ s3 b! t! ?5 c\\" l8 ^+ x4 L
- cout<<"Case "<<count<<": "<<"the next triple peak occurs in "<<triple(ptop, etop, itop, curdays)<<" days.";3 G1 C* f4 ^. M x/ f
- }
- % ~/ I* _& }7 H: m+ O6 h' z
- 5 C9 j1 \8 x! ~8 m! w
- return 0;
- + a; s( z# |, e\\" S H5 _
- }& r6 f$ r/ I% N1 J
- int get_Top(int days, int kind)9 ?1 t% z' T' u' w
- {
- : Q/ C$ r4 t$ T\\" l6 q5 D. _6 N\\" g
- switch(kind)7 n- ? E0 g6 _% L
- {
- 0 k5 m8 [/ D# F! Z7 e t7 e
- case 0:\\" J- G' p- N0 ]. u! w
- return days%23;* w- m6 @9 Q8 _- u3 {( A6 g
- case 1:6 W% L B% y- C+ \% T4 D
- return days%28; T* a& u; _& S! \1 T
- case 2:+ }9 a, o+ w& ^' C' M/ H. I; S
- return days%33;8 g; M/ p4 z+ r2 L! g l4 x# J
- }6 D$ k7 y& G( d7 {& K
- return 0;2 [' L6 V\\" i7 A% `8 h: P3 s
- }
- 4 B E7 S H. Y9 p% I2 s% z6 o/ C
- ) d; n% z4 O; Z. f* s8 @
- int triple(int ptop, int etop, int itop, int cur)
- % P) G# q\\" i& U |( R
- {) T6 ?$ f* T1 Z
- float x, y, z;* \* M+ s& ]\\" }1 N: V# I
- int m1 = etop-ptop-5,
- \\" O& H0 J& n0 ^# K5 i0 e( y
- m2 = itop-etop-5;
- , s$ a. T0 i4 q8 k* b) L$ k9 Q6 P4 p
- int temp = 0;
- , h' ?\\" D4 N! J! l8 N0 d) i! ]
- for(z=2; (itop+(z-1)*33) <= 21252; z++)
- ; d* |2 q\\" S3 c% e' {
- {3 B3 F2 K M0 }\\" X$ N- s0 S/ u% i
- temp = m2 + 33*z;
- 0 I4 d# P+ `\\" W6 W9 F+ w% ]6 m
- y = (float)temp/28;
- 0 Y8 ^' B' B8 J( o$ A! }
- x = (float)(m1+temp)/23;
- $ B) A( ^! r% r, Y: Y
- if(x>0 && y>0 && is_Integer(x) && is_Integer(y))7 K: _0 K1 v: c& t
- return itop + (z-1)*33 -cur;. g& c1 t% E. L) I- r
- }) V/ A; q% t7 A* z; `
- return 0;
- / F: H: `9 R; ^ A# w0 j
- }\\" K4 m N9 n$ h6 n* Q9 w; K
- \\" M! Q1 B' M- y s0 g
- bool is_Integer(float n)
- $ F- A) F% G% G O) F
- {
- # g o7 S- j) \. M7 L
- if( (int)n - n ==0)
- 0 s; Z7 F) e& T& |/ H7 L
- return true;) l% M0 R l2 G0 a1 P# `* [
- else
- # Y+ Q7 h1 y! k: x1 h/ k! p, `
- return false;
- $ I1 q1 `2 n; n
- }
- 9 M( `4 S\\" z& p* Z; e( r
- $ p2 o& u* y, B1 v( H
, t/ f$ W. t. v
|
zan
|