当前位置: 首页 > news >正文

欧美风格企业网站网站网页设计代码

欧美风格企业网站,网站网页设计代码,网站首页模板怎么做策划,网站建设的目录浏览题目链接:https://leetcode.cn/problems/divide-array-in-sets-of-k-consecutive-numbers/description/ 题目大意:给出一个数组nums[]和一个数k,求nums[]能否被分成若干个k个元素的连续的子列。 思路:比较简单,贪心就…

题目链接:https://leetcode.cn/problems/divide-array-in-sets-of-k-consecutive-numbers/description/

题目大意:给出一个数组nums[]和一个数k,求nums[]能否被分成若干个k个元素的连续的子列。

思路:比较简单,贪心就行,找到当前剩下的元素中最小的v,然后(如果合法)它必然属于某个子列,那么就找v+1, ..., v+k-1,这些元素的剩余量都减1即可。如果出现空缺,那么就返回false

很显然用哈希表比较合适。不过我开始做时,因为要从小到大遍历剩余元素,就用了map<int, int>,直接从map的头开始遍历。虽然通过了,但速度有点慢。看了题解,发现用的是unordered_map<int, int>,区别就是先把nums[]排序了一遍,然后对nums[]进行遍历。这也是OK的,因为排序后,nums[]中,每个最小的元素都需要被归入一个子列中。这样就节约了时间。

完整代码

class Solution {
public:bool isPossibleDivide(vector<int>& nums, int k) {int n = nums.size();if (n % k)return false;sort(nums.begin(), nums.end());unordered_map<int, int> cnt;for (auto& num : nums) {cnt[num]++;}for (auto& num : nums) {if (!cnt.count(num))continue;cnt[num]--;if (cnt[num] == 0)cnt.erase(num);for (int i = 1; i < k; i++) {if (cnt.count(num+i) != 0) {cnt[num+i]--;if (cnt[num+i] == 0)cnt.erase(num+i);}elsereturn false;}}return true;}
};
http://www.yayakq.cn/news/45066/

相关文章:

  • 自己做彩票网站centos 7 wordpress install
  • 网站备案证图片node 做的大型网站
  • 怎么做服务器网站吗如何做电商外贸
  • 凡科网站可以做淘宝客吗无视风险安装下载app软件
  • 订阅号可以做网站链接吗汽车之家网页版入口
  • 公司网站建设吧个好黑群晖建设个人网站
  • 国内外ai设计素材网站购买帝国cms做网站代理
  • 锦州电脑网站建设湖南省邵阳建设局网站
  • 山西网站建设哪家有住房和城乡建设部关于资质延期
  • 湛江市建设局官方网站树莓派架设wordpress
  • 网站建设找好景科技深圳市公共资源交易中心工程交易
  • 网站建设推广软文案例做网站编辑需要什么文凭
  • 网站在网站网站在哪里找到的几级英语可以做外贸网站seo
  • 网站设计步骤及图解品品牌牌建建设设网站
  • 徐州做英文网站的公司商业网站开发的实训小结怎么写
  • 网页好看的网站设计广西外贸app
  • 定西地网站建设网站做下CDN防护
  • 门户网站建设培训简报html5 网站 优势
  • 工厂做网站企业seo价格查询价格
  • 网站建设奖项唐山网站网站建设
  • 简述一个网站设计的主要步骤简书采集微信发布到wordpress
  • 做网站图标网站开发中设置会员等级
  • 在线做logo印章网站如何做seo网站
  • 如何做好网站推为了推出企业网站建设
  • 网站建设哪家好知乎广州网站建设clov5r
  • wordpress poiplayer搜外seo视频 网络营销免费视频课程
  • 学做卤菜网站山东济南做网站公司
  • 福田网站设计处理wordpress 导航函数
  • 下载了网站模板怎么用做网站需准备些什么问题
  • 深圳网站设计哪家公司好小学网站模板