LeetCode 1282. 用户分组(桶排序思想)

1. 题目

有 n 位用户参加活动,他们的 ID 从 0 到 n - 1,每位用户都 恰好 属于某一用户组。给你一个长度为 n 的数组 groupSizes,其中包含每位用户所处的用户组的大小,请你返回用户分组情况(存在的用户组以及每个组中用户的 ID)。

你可以任何顺序返回解决方案,ID 的顺序也不受限制。此外,题目给出的数据保证至少存在一种解决方案。

示例 1:
输入:groupSizes = [3,3,3,3,3,1,3]
输出:[[5],[0,1,2],[3,4,6]]
解释: 
其他可能的解决方案有 [[2,1,6],[5],[0,4,3]][[5],[0,6,2],[4,3,1]]。示例 2:
输入:groupSizes = [2,1,3,3,3,2]
输出:[[1],[0,5],[2,3,4]]提示:
groupSizes.length == n
1 <= n <= 500
1 <= groupSizes[i] <= n

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/group-the-people-given-the-group-size-they-belong-to
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. multimap 解题

  • 利用 multimap 的有序性,将 <组的长度,ID> 插入map
  • 依次将短的组push_back进数组,数组长度满了,再开一个新的数组
class Solution {
public:vector<vector<int>> groupThePeople(vector<int>& groupSizes) {multimap<int,int> m;for(int i = 0; i < groupSizes.size(); ++i)m.emplace(groupSizes[i],i);vector<vector<int>> ans(1);for(auto& kv : m){if(ans.back().size() < kv.first)ans.back().push_back(kv.second);if(ans.back().size() == kv.first)ans.push_back({});}if(ans.back().size() == 0)ans.pop_back();return ans;}
};

在这里插入图片描述
or

桶排序思想,将长度相同的放到一个桶里,桶满了,push进答案,清空桶

class Solution {
public:vector<vector<int>> groupThePeople(vector<int>& groupSizes) {vector<vector<int>> temp(500);vector<vector<int>> ans;for(int i = 0; i < groupSizes.size(); ++i){temp[groupSizes[i]].push_back(i);if(temp[groupSizes[i]].size() == groupSizes[i]){ans.push_back(temp[groupSizes[i]]);temp[groupSizes[i]].clear();}}return ans;}
};

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/477749.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring Cloud Alibaba 新版本发布:众多期待内容整合打包加入!

在Nacos 1.0.0 Release之后&#xff0c;Spring Cloud Alibaba也终于发布了最新的版本。该版本距离上一次发布&#xff0c;过去了整整4个月&#xff01;下面就随我一起看看&#xff0c;这个大家期待已久的版本都有哪些内容值得我们关注。 版本变化 之前在《Spring Cloud Aliba…

MSRA-万字综述 直击多模态文档理解

文 | 付奶茶随着最近几年多模态大火的&#xff0c;越来越多的任务都被推陈出新为多模态版本。譬如&#xff0c;传统对话任务&#xff0c;推出了考虑视觉信息的多模态数据集&#xff1b;事件抽取&#xff0c;也推出视频形式的多模态版本&#xff1b;就连 grammar induction&…

LeetCode 991. 坏了的计算器(逆向思考)

1. 题目 在显示着数字的坏计算器上&#xff0c;我们可以执行以下两种操作&#xff1a; 双倍&#xff08;Double&#xff09;&#xff1a;将显示屏上的数字乘 2&#xff1b;递减&#xff08;Decrement&#xff09;&#xff1a;将显示屏上的数字减 1 。 最初&#xff0c;计算器…

Spring Cloud Alibaba基础教程:Sentinel使用Apollo存储规则

上一篇我们介绍了如何通过Nacos的配置功能来存储限流规则。Apollo是国内用户非常多的配置中心&#xff0c;所以&#xff0c;今天我们继续说说Spring Cloud Alibaba Sentinel中如何将流控规则存储在Apollo中。 使用Apollo存储限流规则 Sentinel自身就支持了多种不同的数据源来…

评测 | CCKS2022-面向数字商务的知识图谱比赛重磅上线,奖金等你来拿!

转载公众号 | 夕小瑶的卖萌屋CCKS 2022面向数字商务的知识图谱评测赛题介绍阿里巴巴商品数据规模庞大&#xff0c;商品知识图谱为海量异构的商品数据的组织、管理和利用提供了有效的方式。商品数据模态丰富&#xff0c;动态性高&#xff0c;数据存在噪声&#xff0c;这些都对商…

安利几个优质NLP开源项目!搜索、问答、情感分析…

自然语言处理技术在各行业有着广泛的应用&#xff0c;然而长久以来&#xff0c;其落地并不是一帆风顺的。针对这些棘手的问题&#xff0c;百度飞桨深耕产业界&#xff0c;选取NLP领域三大高频场景——检索、问答、情感分析&#xff0c;推出面向真实应用场景的系统功能&#xff…

Spring Cloud Alibaba基础教程:Sentinel使用Nacos存储规则

通过上一篇《使用Sentinel实现接口限流》的介绍&#xff0c;相信大家对Sentinel已经有了初步的认识。在Spring Cloud Alibaba的整合封装之下&#xff0c;接口限流这件事情可以非常轻易的整合到我们的Spring Cloud应用中。但是&#xff0c;通过上篇的整合&#xff0c;依然还不能…

LeetCode 539. 最小时间差(哈希)

1. 题目 给定一个 24 小时制&#xff08;小时:分钟&#xff09;的时间列表&#xff0c;找出列表中任意两个时间的最小时间差并已分钟数表示。 示例 1&#xff1a; 输入: ["23:59","00:00"] 输出: 1备注: 列表中时间数在 2~20000 之间。 每个时间取值在 0…

论文浅尝 | Seq2Seq 知识图谱补全与问答

笔记整理&#xff1a;李行&#xff0c;天津大学硕士论文题目&#xff1a;Sequence-to-Sequence Knowledge Graph Completion and Question Answering链接&#xff1a;https://arxiv.org/pdf/2203.10321.pdf动机知识图嵌入 (KGE) 模型用低维嵌入向量表示知识图 (KG) 的每个实体和…

刀功:谈推荐系统特征工程中的几个高级技巧

前言记得我入算法这一行的第一份工作面试的时候&#xff0c;最终的boss面的面试官是前微软工程院的副院长。面试进行得很顺利&#xff0c;不免向前院长卖弄一番&#xff0c;谈了谈我对算法的理解。我说算法工程师就好比厨师&#xff0c;模型是灶上功夫&#xff0c;而数据预处理…

Spring Cloud Alibaba基础教程:使用Sentinel实现接口限流

最近管点闲事浪费了不少时间&#xff0c;感谢网友libinwalan的留言提醒。及时纠正路线&#xff0c;继续跟大家一起学习Spring Cloud Alibaba。 Nacos作为注册中心和配置中心的基础教程&#xff0c;到这里先告一段落&#xff0c;后续与其他结合的内容等讲到的时候再一起拿出来说…

【报名开启】CCKS2022技术评测任务五“开放知识图谱问答”

转载公众号 | 图谱学苑CCKS2022评测任务五&#xff1a;开放知识图谱问答评测在线报名通道正式开启请通过扫描下方二维码或点击文末阅读原文填写报名信息欢迎大家踊跃报名参赛任务五&#xff1a;开放知识图谱问答任务描述&#xff1a;在互联网软硬件相关技术飞速发展的今天&…

年末回顾:2021年 AI 领域十大研究趋势及必读论文

编 | 小轶&#xff0c;Yimin_饭煲在本文中&#xff0c;我们将梳理近百篇的最新深度学习论文&#xff0c;以总结出“2021 年十大 AI 研究趋势”。AI 领域的论文可谓层出不穷。这篇文章或许能帮助你跟踪总体趋势和重要研究。下文中提及的部分工作可能并不发表于 2021 年&#xff…

LeetCode 445. 两数相加 II(链表大数加法)

1. 题目 给定两个非空链表来代表两个非负整数。数字最高位位于链表开始位置。它们的每个节点只存储单个数字。将这两数相加会返回一个新的链表。 你可以假设除了数字 0 之外&#xff0c;这两个数字都不会以零开头。 进阶: 如果输入链表不能修改该如何处理&#xff1f;换句话…

Spring Cloud Alibaba到底坑不坑?

之前我发过一篇《说说我为什么看好Spring Cloud Alibaba》&#xff0c;然后这两天有网友给我转了这篇文章《坑爹项目spring-cloud-alibaba&#xff0c;我们也来一个》&#xff0c;问我的看法是怎么样的&#xff0c;聊天时候简单说了一下。今天在家休息&#xff0c;抽空整理一下…

聚焦信息抽取前沿难题,CCKS-千言通用信息抽取竞赛报名启动

转载公众号 | 百度NLP信息抽取旨在将非结构化文本中的信息进行结构化&#xff0c;是自然语言处理的基础技术和重要研究领域&#xff0c;一直受到学术界和工业界广泛关注。传统的信息抽取任务与评测通常针对特定的文本领域和单一的抽取任务&#xff0c;难以评估相关技术与方法在…

我有文章了,但也不想搞学术了

文 | 微调源 | 知乎又到了年底&#xff0c;跟大家简单唠唠2021年的收获&#xff08;和失去&#xff09;。在2020年的总结文章里&#xff08;阿调x2020&#xff1a;爱、学术、钱与系统[1]&#xff09;&#xff0c;我最大的困扰可能是读博一年多却没什么主要成果的痛苦。好消息是…

LeetCode 829. 连续整数求和(数学)

1. 题目 给定一个正整数 N&#xff0c;试求有多少组连续正整数满足所有数字之和为 N? 示例 1: 输入: 5 输出: 2 解释: 5 5 2 3&#xff0c;共有两组连续整数([5],[2,3])求和后为 5。示例 2: 输入: 9 输出: 3 解释: 9 9 4 5 2 3 4示例 3: 输入: 15 输出: 4 解释: 15…

说说我为什么看好Spring Cloud Alibaba

最近对《Spring Cloud Alibaba基础教程》系列的催更比较多&#xff0c;说一下最近的近况&#xff1a;因为打算Spring Boot 2.x一起更新。所以一直在改博客Spring Boot专题页和Git仓库的组织。由于前端技术太过蹩脚&#xff0c;花了不少时间。大家不用担心&#xff0c;这个系列不…

【报名开启】CCKS2022技术评测任务七“化学元素知识图谱构建及应用”

任务描述&#xff1a;随着AI技术的发展和普及&#xff0c;药物研发也逐渐进入到AI时代&#xff0c;擅长处理大数据的AI深度学习技术&#xff0c;就成为近年来大家关注的焦点。化合物的性质预测的主要目的在于及时发现理化性质不达标的化合物&#xff0c;以降低候选化合物进入临…