
P1577 切绳子 (二分答案Java)
发布日期:2021-05-08 22:12:34
浏览次数:22
分类:精选文章
本文共 897 字,大约阅读时间需要 2 分钟。
P1577 切绳子
题目描述
有 N 条绳子,它们的长度分别为 Li。如果从它们中切割出 K 条长度相同的绳子,这 K 条绳子每条最长能有多长?答案保留到小数点后 2 位(直接舍掉 2 位后的小数)。
输入格式
第一行两个整数 N 和 K,接下来 N 行,描述了每条绳子的长度 Li。
输出格式
切割后每条绳子的最大长度。答案与标准答案误差不超过 0.01 或者相对误差不超过 1% 即可通过。
输入输出样例
输入 #1
4 11 8.02 7.43 4.57 5.39 输出 #1 2.00解题思路:
二分答案模板题
代码如下:
import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); long n, k, ans = 0, l, r, mid = 0; long[] a = new long[10010]; double[] b = new double[10010]; double t; n = sc.nextLong(); k = sc.nextLong(); for (int i = 1; i <= n; i++) { b[i] = sc.nextDouble(); a[i] = (long) (b[i] * 100); ans += a[i]; } l = 0; r = ans / k + 1; while (l < r) { mid = (l + r + 1) / 2; ans = 0; for (int i = 1; i <= n; i++) ans += a[i] / mid; if (ans < k) r = mid - 1; else l = mid; } t = r * 1.00 / 100; System.out.printf("%.2f", t); }}
发表评论
最新留言
关注你微信了!
[***.104.42.241]2025年03月23日 17时37分59秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
go等待N个线程完成操作总结
2021-05-09
ReactJs入门教程-精华版
2021-05-09
Python 之网络式编程
2021-05-09
MySql5.5安装步骤及MySql_Front视图配置
2021-05-09
Java内存模型(JMM)
2021-05-09
AQS相关
2021-05-09
WCF学习之旅—第三个示例之一(二十七)
2021-05-09
java ThreadPoolExecutor初探
2021-05-09
快速指数算法
2021-05-09
python去除字符串中的特殊字符(爬虫存储数据时会遇到不能作为文件名的字符串)
2021-05-09
SpringCloud微服务(03):Hystrix组件,实现服务熔断
2021-05-09
Spring 框架基础(01):核心组件总结,基础环境搭建
2021-05-09
Cassandra数据建模
2021-05-09
Internet Explorer 10 专题上线
2021-05-09
云计算之路-阿里云上:0:25~0:40网络存储故障造成网站不能正常访问
2021-05-09
网站故障公告1:使用阿里云RDS之后一个让人欲哭无泪的下午
2021-05-09
上周热点回顾(6.3-6.9)
2021-05-09
上周热点回顾(8.12-8.18)
2021-05-09