当前位置:网站首页>Dichotomy Medium LeetCode6133. Maximum Number of Groups
Dichotomy Medium LeetCode6133. Maximum Number of Groups
2022-08-01 21:35:00 【18 Aru】
描述
给你一个正整数数组 grades ,表示大学中一些学生的成绩.你打算将 所有 学生分为一些 有序 的非空分组,其中分组间的顺序满足以下全部条件:
第 i 个分组中的学生总成绩 小于 第 (i + 1) 个分组中的学生总成绩,对所有组均成立(除了最后一组).
第 i 个分组中的学生总数 小于 第 (i + 1) 个分组中的学生总数,对所有组均成立(除了最后一组).
返回可以形成的 最大 组数.
示例 1:
输入:grades = [10,6,12,7,3,5]
输出:3
解释:下面是形成 3 个分组的一种可行方法:
- 第 1 个分组的学生成绩为 grades = [12] ,总成绩:12 ,学生数:1
- 第 2 个分组的学生成绩为 grades = [6,7] ,总成绩:6 + 7 = 13 ,学生数:2
- 第 3 个分组的学生成绩为 grades = [10,3,5] ,总成绩:10 + 3 + 5 = 18 ,学生数:3
可以证明无法形成超过 3 个分组.
示例 2:
输入:grades = [8,8]
输出:1
解释:只能形成 1 个分组,因为如果要形成 2 个分组的话,会导致每个分组中的学生数目相等.
提示:
1 <= grades.length <= 105
1 <= grades[i] <= 105
分析
The size of the array elements is not important,Just judge how many groups the array length can make up.
Dichotomy calculation
class Solution {
public int maximumGroups(int[] grades) {
int n = grades.length;
int left = 1, right = n;
while (left < right) {
int mid = (right - left + 1) / 2 + left;
if ((1+mid) > 2 * n / mid) {
right = mid - 1;
} else if ((1+mid) < 2 * n / mid){
left = mid;
} else {
return mid;
}
}
return left;
}
}
边栏推荐
猜你喜欢
Jmeter combat | Repeated and concurrently grabbing red envelopes with the same user
RecycleView的使用
ORI-GB-NP半乳糖介导冬凌草甲素/姜黄素牛血清白蛋白纳米粒的研究制备方法
How to choose Visibility, Display, and Opacity when interacting or animating
方舟:生存进化官服和私服区别
【Jmeter常用断言组件】
ARFoundation入门教程U2-AR场景截图截屏
牛血清白蛋白-葡聚糖-叶黄素纳米颗粒/半乳糖白蛋白磁性阿霉素纳米粒的制备
基于php动漫周边商城管理系统(php毕业设计)
Based on php online examination management system acquisition (php graduation design)
随机推荐
How to choose Visibility, Display, and Opacity when interacting or animating
Unity Shader 常规光照模型代码整理
Jmeter combat | Repeated and concurrently grabbing red envelopes with the same user
JSD - 2204 - Knife4j framework - processing - Day07 response results
上传markdown文档到博客园
微软校园大使喊你来秋招啦!
Spark shuffle tuning
LeetCode·每日一题·1374.生成每种字符都是奇数个的字符串·模拟
How to encapsulate the cookie/localStorage sessionStorage hook?
shell编程规范与变量
软考 ----- UML设计与分析(上)
牛血清白蛋白-葡聚糖-叶黄素纳米颗粒/半乳糖白蛋白磁性阿霉素纳米粒的制备
【接口测试】JMeter调用JS文件实现RSA加密
基于php酒店在线预定管理系统获取(php毕业设计)
图片识别商品接口 API:天猫淘宝
CS-NP白蛋白包覆壳聚糖纳米颗粒/人血清白蛋白-磷酸钙纳米颗粒无机复合材料
C语言_typedef和结构体
宝塔应用使用心得
Spark集群搭建
方舟生存进化是什么游戏?好不好玩