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
相关推荐
迷藏494几秒前
**发散创新:基于Python与深度学习的情绪识别实战全流程解析**在人工智能快速发展的今天,**情绪识别(Emoti
java·人工智能·python·深度学习
一只幸运猫.3 分钟前
Rust实用工具特型-Clone
开发语言·后端·rust
羊小猪~~10 分钟前
LLM--SFT简介
python·考研·算法·ai·大模型·llm·微调
0xDevNull14 分钟前
Java BigDecimal 完全指南:从入门到精通
java·开发语言·后端
桌面运维家15 分钟前
交换机环路排查:STP配置实战与网络故障精确定位
开发语言·php
XiYang-DING16 分钟前
【Java】从源码深入理解LinkedList
java·开发语言
837927397@QQ.COM16 分钟前
个人理解无界原理
开发语言·前端·javascript
无心水19 分钟前
17、Java内存溢出(OOM)避坑指南:三个典型案例深度解析
java·开发语言·后端·python·架构·java.time·java时间处理
广州灵眸科技有限公司22 分钟前
瑞芯微(EASY EAI)RV1126B 人脸98关键点算法识别
开发语言·科技·嵌入式硬件·物联网·算法·php
Figo_Cheung33 分钟前
赛博疯态(Cyber-Madness)研究报告——基于人机交互中的情感共鸣、递归指涉与拟人化投射现象分析
开发语言·php·人机交互