Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

跟同学一起贡献了几十个WA,哪位好心的牛指点下吧T_T

Posted by format_septem at 2008-08-25 09:20:18 on Problem 3296
我推出的公式是ans(最后剩下的酒) x1(每次加的水)
ans=vr^k/((x1+vw)*(x2+vr)^(k-1))
x1+x2+..xk<=vb
x1+vw<=vc xi+vr<=vc(i=2,3,4...k)

我的方法是先计算sum=vb+vr*(k-1)+vw把能够用的水全部用上
算每次酒桶中液体(包括水和酒)平均值ave=sum/k
然后分情况讨论
如果ave>vc,就是平均值超过了酒桶容量于是sum=vc*k,ave=vc
执行上面那步保证了vc和vb的约束条件
这个时候分两种情况
1 如果ave<vw那么第一次直接倒掉酒不加水
把sum修改成sum=vb+vr*(k-1),ave=sum/(k-1);
剩下的每次操作就是ave-vr了
2 如果ave<vr,那么直接第一次把水都加进去就行了

然后考虑到可能出现 vb==4
导致最后结果是 3 1.33 1.33 1.33的情况
把每次答案舍去小于0.01的值都+起来=fsum
然后按每次桶中液体的容量从小到大+0.01,每次fsum-0.01
直到fsum<0.01

自己写了个暴力枚举的对照也看不出哪里错了,好心人救救我吧T_T

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator