Leetcode1090. 受标签影响的最大值

思路:根据值从大到小排序,然后在加的时候判断是否达到标签上限即可,一开始想用字典做,但是题目说是集合却连续出现两个8,因此使用元组+SortedList进行解决

python 复制代码
class Solution:
    def largestValsFromLabels(self, values: list[int], labels: list[int], numWanted: int, useLimit: int) -> int:
        from sortedcontainers import SortedList
        from collections import defaultdict
        sorted_values = SortedList()
        for num in range(0, len(labels)):
            sorted_values.add((values[num], labels[num]))
        total_sum = 0
        label_dict = defaultdict(int)
        for value_label in reversed(sorted_values):
            value = value_label[0]
            label = value_label[1]
            if label_dict[label] < useLimit:
                if numWanted > 0:
                    numWanted -= 1
                    total_sum += value
                    label_dict[label] += 1
                else:
                    return total_sum
        return total_sum
相关推荐
汤米粥12 小时前
Python爬虫中Xpath用法之——normalize-space()
开发语言·python
科技道人12 小时前
记录 设置-显示大小和字体
开发语言·android设置·字体和显示大小
浮江雾13 小时前
Flutter第三节----Dart中的数据类型
android·开发语言·学习·flutter·入门·函数
想会飞的蒲公英13 小时前
回归模型怎样评估:MAE、MSE、RMSE 和 R²
人工智能·python·机器学习·数据分析·回归
weixin_4223293113 小时前
AgentScope Java 项目入门 & Builder 深度解读
java·开发语言·人工智能
henrylin999913 小时前
Quant Agent 完整系统规格
python·量化
三川69813 小时前
Tkinter库的学习记录10-Message与Messagebox
python
吃饱了得干活13 小时前
别只会传 temperature!一文挖透 LangChain 模型配置:Profile、全参数与运行时动态覆盖
python·langchain
shuoyuanAI13 小时前
张家口专业的aigeo优化品牌找哪家
大数据·人工智能·python