leetcode – Missing Ranges

leetcode – Missing Ranges

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

称号:

Missing Ranges

Given a sorted integer array where the range of elements are [0, 99]inclusive, return its missing ranges.
For example, given [0, 1, 3, 50, 75], return[“2”, “4->49”, “51->74”, “76->99”]


void generate_string(int l, int r, vector<string> &res)
{
	if (l>r || l < 0 || r>99)
		return;
	if (l == r)
		res.push_back(to_string(l));
	else
	{
		string s1 = to_string(l),s2="->",s3=to_string(r);
		res.push_back(s1+s2+s3);
	}
}

vector<string> MissingRanges(const vector<int> &nums)
{
	vector<string> res;

	if (nums.empty())
	{
		generate_string(0, 99, res);
		return res;
	}

	if (nums.size() == 1)
	{
		generate_string(0, nums[0]-1, res);
		generate_string(nums[0]+1, 99, res);
		return res;					
	}

	generate_string(0, nums[0] - 1, res);
	for (int i = 1; i < nums.size(); ++i)
	{
		generate_string(nums[i-1]+1, nums[i] - 1, res);
	}
	generate_string(nums.back()+1, 99, res);

	return res;

}

版权声明:本文博主原创文章,博客,未经同意不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116943.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • lvextend resize2fs_resize2fs报错

    lvextend resize2fs_resize2fs报错扩容挂载在系统根目录下的lv时,因为1.进程占用问题导致e2fsck-f/dev/cl/root命令执行失败,2.根目录剩余空间太小导致resize2fs-f/dev/cl/root执行报错:resize2fs:Badmagicnumberinsuper-block当尝试打开/dev/mapper/cl-root时找不到有效的文件系统超级块.通过xfs扩

    2022年10月7日
    6
  • 优秀的程序员真的不写注释吗?

    优秀的程序员真的不写注释吗?我在很多地方看到这样一个观点,“请停止写注释,因为只有烂的代码才需要注释。”这个观点非常巧妙,它让我想起了孟子的一句话,“杨氏为我,是无君也;墨氏兼爱,是无父也。无父无君,是禽兽也。”动不动就骂别人是“禽兽”,我总觉得有点不妥,这很不符合孟子的浩然之气啊。有些大牛也有孟子这样的觉悟,如果有人要他给自己的代码加上注释,就好像是对他的一种侮辱:“我的代码写得这么优雅,你难道看不懂吗?注释是多余的!”我必须得承认,每个程序员都应该有一颗追求“优雅”的心,力争自己的代码更易阅读和理解——不只是针对机器,还有我

    2022年5月30日
    36
  • shell的比较运算符

    算术运算符 +-*/%表示加减乘除和取余运算+=-=*=/=同C语言中的含义位操作符>>>=表示位左右移一位操作&&=|

    2021年12月24日
    51
  • CF1153F Serval and Bonus Problem[通俗易懂]

    CF1153F Serval and Bonus Problem[通俗易懂]CF1153F Serval and Bonus Problem

    2022年4月21日
    45
  • turtle画曲线_心形曲线图

    turtle画曲线_心形曲线图这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式欢迎使用Markdown编辑器你好!这是你第一次使用Markdown编辑器所展示的欢迎页。如果你想学习如何使用Markdown编辑器,可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。

    2022年10月9日
    3
  • CIDR地址块及其子网划分(内含原始IP地址分类及其子网划分的介绍)

    CIDR地址块及其子网划分(内含原始IP地址分类及其子网划分的介绍)CIDR地址块及其子网划分1.CIDR概述及其地址块计算  CIDR中文全称是无分类域间路由选择,英文全称是ClasslessInter-DomainRouting,在平常,大家多称之为无分类编址,它也是构成超网的一种技术实现。2.CIDR子网划分3.总结

    2022年4月29日
    100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号