淬炼神体
Description
王仙女將你提供的答案填在《葵花寶典》上,突然,寶典發(fā)出耀眼的白光,一股強(qiáng)大的吸力瞬間將仙女吸入寶典中。
一陣眩暈過后,仙女發(fā)現(xiàn)自己來到了一個(gè)浮島上,四周的半空中也有許多大小不一的浮島,他抬頭一看,空中浮現(xiàn)著這樣一句話:欲要成神,必先成就神體。每座浮島都有一定的淬煉肉體的功效,但你只能選擇恰好K座來淬煉你的肉體。最終你的神體有多強(qiáng),就看你的造化了。
仙女看了看手中的寶典,發(fā)現(xiàn)上面浮現(xiàn)著這些浮島的信息,每座浮島上有兩個(gè)數(shù)字。仙女研究了一會(huì)兒終于明白了,原來,每來到一座浮島,你就會(huì)由這座島上的神雷淬煉肉體,得到a點(diǎn)淬煉值,但是這種淬煉方法對(duì)身體又有一定的傷害,于是你會(huì)受到b點(diǎn)損傷值。而最后你的神體強(qiáng)度恰好為你得到的淬煉值之和與你受到的損傷值之和的比值。即神體強(qiáng)度=(∑a)/(∑b)。同時(shí),你不能選擇一座浮島兩次。你不必?fù)?dān)心仙女如何到達(dá)其它的島,寶典擁有將他傳送至任何一座島的能力。
現(xiàn)在,仙女想知道,他有可能淬煉出的神體的最大強(qiáng)度是多少。他把這個(gè)問題交給了未來的你作為剛剛幫助過他的答謝。
Input
第一行包含兩個(gè)整數(shù)N,K,分別表示浮島的數(shù)量(不包括仙女所在的浮島)和仙女可以選擇的浮島數(shù),浮島的編號(hào)為1~N
第二行包含N個(gè)整數(shù),第i個(gè)數(shù)為編號(hào)為i的浮島的淬煉值a
第二行包含N個(gè)整數(shù),第i個(gè)數(shù)為編號(hào)為i的浮島的損傷值b
Output
一個(gè)實(shí)數(shù),為仙女有可能淬煉出的神體的最大強(qiáng)度,保留三位小數(shù)。
Sample Input
3 2
5 7 1
4 3 2
Sample Output
1.714
Data Constraint
對(duì)于30%的數(shù)據(jù),2≤K≤N≤10,1≤a,b≤5
對(duì)于100%的數(shù)據(jù),2≤K≤N≤100000,1≤a,b≤1000
.
.
.
.
.
.
分析
如果有
(∑a)/(∑b)=mid
那么
(∑a)=mid*(∑b)
可得
(∑a)-mid*(∑b)=0
所以
∑(a-mid*b)=0
綜上
mid為答案
我們可以二分這個(gè)mid
設(shè)w[i]=a[i]-mid*b[i]
排序并求和前k個(gè)==sum
如果sum>=0,那么這個(gè)mid合法,我們就繼續(xù)二分,直至最優(yōu)解。
.
.
.
.
.
程序:
轉(zhuǎn)載于:https://www.cnblogs.com/YYC-0304/p/10458955.html
總結(jié)
- 上一篇: Vigenère密码
- 下一篇: 学习神技