LintCode : 木材加工
来源:互联网 发布:linux用终端打开文件 编辑:程序博客网 时间:2024/04/27 13:27
木材加工
- 描述
- 笔记
- 数据
- 评测
有一些原木,现在想把这些木头切割成一些长度相同的小段木头,需要得到的小段的数目至少为 k
。当然,我们希望得到的小段越长越好,你需要计算能够得到的小段木头的最大长度。
注意事项
木头长度的单位是厘米。原木的长度都是正整数,我们要求切割得到的小段木头的长度也要求是整数。无法切出要求至少 k 段的,则返回 0
即可。
您在真实的面试中是否遇到过这个题?
Yes
样例
有3根木头[232, 124, 456]
, k=7
, 最大长度为114
.
挑战
标签
- 先将所有的长度加起来,算出一个平均值,作为标准stand
- 在每个数组中的长度划分,将整数部分相加若是符合>=k段,返回
- 否则stand--,如此递归
/** *@param L: Given n pieces of wood with length L[i] *@param k: An integer *return: The maximum length of the small pieces. */ public int woodCut(int[] L, int k) { // write your code here int result = 0; if (L == null || L.length == 0) { return 0; } long totalLength = 0; for (int i = 0; i < L.length; i++) { totalLength += L[i]; } int stand = (int) Math.floor(totalLength / k); while (stand > 0) { int totalK = 0; for (int i = 0; i < L.length; i++) { totalK += Math.floor(L[i] / stand); } if (totalK >= k) { result = stand; break; } else { stand--; } } return result; }
0 0
- LintCode-木材加工
- LintCode 木材加工
- lintcode-木材加工-183
- lintcode 木材加工
- LintCode 木材加工
- LintCode : 木材加工
- LintCode 183 木材加工
- LintCode : 木材加工
- Lintcode 木材加工
- 木材加工-LintCode
- 木材加工
- 木材加工
- 木材加工
- 木材加工
- wikioi 3297 木材加工
- [POJ2774]木材加工
- OpenJugde - 2774:木材加工
- OpenJudge 2774 木材加工
- goal-keeper,足球守门员机器人,系统设计图,梅西守门员机器人
- getchar,scanf以及缓冲区的概念
- 话说Svn与Git的区别
- 如何利用Python搭建代理池?
- Eclipse导入到web项目没有run on server
- LintCode : 木材加工
- Linux BT下载(16)-与peer交换数据模块的设计和实现
- 一生致爱--TO hz
- 线程创建、线程等待、线程终止
- LibEvent中文帮助文档--第14章【使用LibEvent的DNS:高和低层功能】
- Ansible 源码安装
- 二叉树整理(二)
- 装机步骤!!!!
- webpack安装等说明