当前位置:网站首页>1802. 有界数组中指定下标处的最大值【贪心 +二分】
1802. 有界数组中指定下标处的最大值【贪心 +二分】
2022-07-29 15:50:00 【白速龙王的回眸】

分析
我们通过二分最大值来看
函数是啥?
就是最大值val固定后,可以最贪心得最小maxSum
分两种情况考虑,如果长度比val得值要大,最贪心得就是1111.23. val
其次如果要小最贪新得就是val - length + 1 … val
计算前后之和减去重复得val就是当前得最小maxSum
ac code
class Solution:
def maxValue(self, n: int, index: int, maxSum: int) -> int:
# constructive
# nums[index]越大,maxSum越大
# greedy get min sum
def check(val, length):
if length >= val:
# 111..23..val
return (1 + val) * val // 2 + length - val
else:
# val - length + 1 -> val
return (2 * val - length + 1) * length // 2
l, r = 1, maxSum
while l + 1 < r:
#print(l, r)
mid = (l + r) // 2
if check(mid, index + 1) + check(mid, n - index) - mid > maxSum:
r = mid - 1
else:
l = mid
for ans in range(r, l - 1, -1):
if check(ans, index + 1) + check(ans, n - index) - ans <= maxSum:
return ans
总结
单调性:maxn越大,maxSum越大(贪心找最小)
等差数列公式
边栏推荐
猜你喜欢

揭秘 | 2019 To B 年度盛宴那些人和那些事

bit field in c language

Google Play 政策更新 | 2022 年 7 月

化妆品行业分销渠道管理系统加强企业渠道管控能力,赋能化妆品渠道数字化升级

【服务器存储数据恢复】华为OceanStor某型号存储raid5硬盘故障离线,热备盘同步数据失败导致raid崩溃的数据恢复案例

Interviewer: What are the design principles?What is the Lie Substitution Principle?

如何检测出你们安装的依赖是否安全

CAS原理以及ABA问题解决Demo-代码

风格迁移篇----艺术风格转换的内容与风格解构

File management: logical structure
随机推荐
Hystri基本介绍和代码简单实现
File management: the physical structure of files
揭秘 | 2019 To B 年度盛宴那些人和那些事
MLX90640 红外热成像仪开发笔记(九)
兆易创新2021年将从长鑫存储采购3亿美元DRAM产品
File management: logical structure
生产者消费代码
理解 Web3 的权威指南
win10 校验sha256
打卡广汽本田喜悦安全驾驶中心,体验最刁钻的场地训练
远程桌面工具推荐
nacos实现基本的服务跨进程调用和使用OpenFeign进行服务跨进程调用
泰芯TXW8301打造新一代8路无线监控NVR套装解决方案
地平线获得舜宇集团战略投资并与舜宇智领签署战略合作协议
长江存储计划今年产能提高一倍,并试产192层3D NAND
HMS Core音频编辑服务音源分离与空间音频渲染,助力快速进入3D音频的世界
Floating point memory storage problem
Linux下载安装mysql5.7版本教程最全详解
中小型金融企业该如何进行灾备建设?
使用DataEase开源工具制作一个高质量的数据大屏