随笔分类 - C++语言
摘要:这个题目和熄灯问题很类似,都是使用枚举的方法来解决,主要思想是枚举第一行,然后让第二行去匹配第一行,以此类推,一直到第n行,然后判断第n行的情况,如果符合条件,那就是合适的解。下面是一些关键的思想的详细解释: 首先,对于每一行是否涂画的操作:0表示不涂画,1表示涂画。press[ii+1][jj]=
阅读全文
摘要:刚开始我是想依次计算i个相连矩形的面积,然后找出最大的面积,但是这种做法是时间复杂度是O(n*n),运行会超时。 这个是网上的一种做法,分别计算以第i个矩形作为高时,最大的面积。这就要以i为起始点,左右寻找高大于等于S[i]的矩形,一直到某个矩形小于S[i],或者到了0和n-1。 题目和代码如下:
阅读全文
摘要:本题是常规思路,这里要注意:1)带参命令没有参数和参数错误时终止2)命令不存在时终止3)命令都是错误的,不以—开头。 题目和代码如下: 问题描述 试题编号: 201403-3 试题名称: 命令行选项 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 请你写一个命令行分析程序,用
阅读全文
摘要:本题思路简单 题目和代码如下: 问题描述 试题编号: 201409-3 试题名称: 字符串匹配 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 给出一个字符串和多行文字,在这些文字中找到字符串出现的那些行。你的程序还需支持大小写敏感选项:当选项打开时,表示同一个字母的大写和小
阅读全文
摘要:本题思路:首先,使用一个map来存储所有需要替换的关键词,然后,再逐行的替换掉其中的关键词,记住,find每次的其实位置不一样,否则会出现递归生成没有出现关键词就清空掉。最后输出。 题目和代码如下: 问题描述 试题编号: 201509-3 试题名称: 模板生成系统 时间限制: 1.0s 内存限制:
阅读全文
摘要:本题思路:首先,计算a月1日是星期几,然后再通过b和c得出日期monday,最后判断monday是否合法。 题目与代码如下: 问题描述 试题编号: 201503-3 试题名称: 节日 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 有一类节日的日期并不是固定的,而是以“a月的
阅读全文
摘要:本题思路如下: 题目和代码如下: 问题描述 试题编号: 201512-3 试题名称: 画图 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 用 ASCII 字符来画图是一件有趣的事情,并形成了一门被称为 ASCII Art 的艺术。例如,下图是用 ASCII 字符画出来的 C
阅读全文
摘要:本题思路如下图: 题目和代码如下: 问题描述 试题编号: 201609-3 试题名称: 炉石传说 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 《炉石传说:魔兽英雄传》(Hearthstone: Heroes of Warcraft,简称炉石传说)是暴雪娱乐开发的一款集换式
阅读全文
摘要:本题思路如下: 具体的细节如下:首先去掉字符串中重复出现的/,然后遇到..,就删除栈的最后一个元素,.忽略 下面是代码和题目: 问题描述 试题编号: 201604-3 试题名称: 路径解析 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 在操作系统中,数据通常以文件的形式存储
阅读全文
摘要:我的想法如下图: 代码和题目如下: 问题描述 试题编号: 201703-3 试题名称: Markdown 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 Markdown 是一种很流行的轻量级标记语言(lightweight markup language),广泛用于撰写带格
阅读全文
摘要:这题我的思路是将用户直接与他的权限联系起来。比如: 用户 角色 权限 Alice hr crm:2直接转变为:Alice: crm:2 题目与代码如下: 问题描述 试题编号: 201612-3 试题名称: 权限查询 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 授权 (au
阅读全文
摘要:首先,将全部的输入连接起来,存储到字符串str中,再将\\全部替换为\空格。再依次遍历str。对于:“A”:“B”这种情况,我们以:为分界点来分别存储key和value来进行存储对于:“A”:{ “B”:“C” }的这种情况,我们如果在:号后面遇到的不是引号,那就将value设置为OBJECT,进行
阅读全文
摘要:这题有如下几个点要注意: 1.最开始输出的开始时间和截止时间,这里是不包含截止时间的。 2.月份和星期的英文表示是大小写任意的,并未规定必须是Sat这种形式。 3.星期天的数字标识是0。 我的思路是,首先将月份、天数、小时、分钟、星期统统规格化,格式如下: 月份:规格化前:1,2-4 规格化后:1
阅读全文
摘要:在某种情况下,我们不得不进行整型等数据类型与字符串类型的转换,比如,将“1234”转换为整数,常规的我们可以使用atoi函数来进行转换,或者是写一个循环来做转换,我们在这里也可以使用sstream类来做转换。示例代码如下,演示了atoi和sstream的方法。
阅读全文
摘要:istringstream用于执行C++风格的串流操作。 下面的示例是使用一个字符串初始化istringstream类,然后再使用>>操作符来依次输出字符串中的内容。
阅读全文
摘要:sort函数无法对map进行排序,网上的方法一般是通过将map转为vector后,再来使用sort进行排序。 如下, 比较函数 主函数
阅读全文
摘要:题目如下: 这题我刚开始被示例给迷惑了,是将key和value分开输入的,类似于cin>>key>>value,这里应该是要讲每行字符串连接成一个新的字符串,然后遍历整个字符串,遇到:表示key录入完毕,遇到,和},要先判断,的情况,确定,前面没有},这是才表示value录入完毕。再就是前缀的问题,
阅读全文
摘要:例题:逆波兰表达式逆波兰表达式是一种把运算符前置的算术表达式,例如普通的表达式2 + 3的逆波兰表示法为+ 2 3。逆波兰表达式的优点是运算符之间不必有优先级关系,也不必用括号改变运算次序,例如(2 +3) * 4的逆波兰表示法为* + 2 3 4。本题求解逆波兰表达式的值,其中运算符包括+ - *
阅读全文
摘要:n皇后问题:输入整数n, 要求n个国际象棋的皇后,摆在n*n的棋盘上,互相不能攻击,输出全部方案。 代码如下:
阅读全文
摘要:汉诺塔问题古代有一个梵塔,塔内有三个座A、B、C,A座上有64个盘子,盘子大小不等,大的在下,小的在上(如图)。有一个和尚想把这64个盘子从A座移到C座,但每次只能允许移动一个盘子,并且在移动过程中,3个座上的盘子始终保持大盘在下,小盘在上。在移动过程中可以利用B座,要求输出移动的步骤 。 代码如下
阅读全文