二分法的应用:POJ1064 Cable master
生活随笔
收集整理的這篇文章主要介紹了
二分法的应用:POJ1064 Cable master
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
/*
POJ1064 Cable master時(shí)間限制: 1000MS 內(nèi)存限制: 10000K
提交總數(shù): 58217 接受: 12146
描述Wonderland的居民已經(jīng)決定舉辦地區(qū)性編程比賽。評(píng)委會(huì)自愿并承諾舉辦有史以來(lái)最誠(chéng)實(shí)的比賽。決定使用“星形”拓?fù)浣Y(jié)構(gòu)為參賽者連接計(jì)算機(jī) - 即將它們?nèi)窟B接到單個(gè)中央集線器。為了組織一場(chǎng)真正誠(chéng)實(shí)的比賽,評(píng)審委員會(huì)負(fù)責(zé)人決定將所有參賽選手均勻地放在距離該比賽中心的地方。
為了購(gòu)買網(wǎng)線,評(píng)審委員會(huì)聯(lián)系了當(dāng)?shù)氐木W(wǎng)絡(luò)解決方案供應(yīng)商,要求為他們出售具有相同長(zhǎng)度的特定數(shù)量的電纜。評(píng)審委員會(huì)希望電纜盡可能長(zhǎng)地讓參賽者盡可能遠(yuǎn)離彼此。
公司的Cable Master被分配到該任務(wù)。他知道長(zhǎng)達(dá)一厘米的股票中的每根電纜的長(zhǎng)度,并且他可以以厘米精度切割它們,告訴他必須切割的碎片的長(zhǎng)度。然而,這一次,這個(gè)長(zhǎng)度還不知道,而且有線電視大師完全不解。
您需要編寫一個(gè)程序來(lái)幫助Cable Master,該程序?qū)⒋_定可從電纜中切斷的電纜段的最大可能長(zhǎng)度,以獲得指定數(shù)量的段。
輸入輸入文件的第一行包含兩個(gè)整數(shù)n和k,用空格分隔。N(1 = N = 10000)是庫(kù)存中的電纜數(shù)量,K(1 = K = 10000)是請(qǐng)求數(shù)量。第一行后面是N行,每行一個(gè)數(shù)字,以米為單位指定庫(kù)存中每條電纜的長(zhǎng)度。所有電纜長(zhǎng)度至少1米,最長(zhǎng)100公里。輸入文件中的所有長(zhǎng)度都以厘米精度寫入,精確到小數(shù)點(diǎn)后兩位數(shù)字。
產(chǎn)量在輸出文件中寫出Cable Master可能從電纜中切斷的部件的最大長(zhǎng)度(以米為單位)以獲取所需數(shù)量的部件。數(shù)字必須以厘米精度寫入,精確到小數(shù)點(diǎn)后兩位數(shù)字。
如果無(wú)法削減所請(qǐng)求的每件至少一厘米長(zhǎng)的件數(shù),則輸出文件必須包含單個(gè)數(shù)字“0.00”(不含引號(hào))。
示例輸入4 11
8.02
7.43
4.57
5.39
示例輸出2.00來(lái)源東北歐洲2001*/import java.util.Scanner;public class Main {static int N, K;static double[] a;public static void main(String[] args) {Scanner sc = new Scanner(System.in);N = sc.nextInt();K = sc.nextInt();a = new double[N];for (int i = 0; i < N; i++)a[i] = sc.nextDouble();sc.close();double low = -1, high = 100001;while (high - low > 0.001) {double mid = (low + high) / 2;if (C(mid)) {low = mid;} else {high = mid;}}if (high < 0.01)System.out.println("0.00");elseSystem.out.println(String.format("%.2f", (int) (high * 100) / 100.0));}static boolean C(double X) {int count = 0;for (int i = 0; i < N; i++)count = count + (int) (a[i] / X);return count >= K;}
}
?
轉(zhuǎn)載于:https://www.cnblogs.com/Alpharun/p/8663332.html
總結(jié)
以上是生活随笔為你收集整理的二分法的应用:POJ1064 Cable master的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Visio软件
- 下一篇: Mac 下Axure RP9下载与安装