自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

LITTENg的博客

刚开始学习编程的菜鸟

  • 博客(27)
  • 收藏
  • 关注

原创 PAT 1047. Student List for Course (25)--坑点

题目分析: 很容易想到,根据课程号维持相应的一个列表,如果某学生注册了该课程,就将他的姓名添加到列表当中。最后对相应的列表进行排序,按照格式输出相应的内容即可。我使用的是vectorgroup[] 数组来实现。 注意点: (1) 题目中说了所有的课程编号都在1~k之间,因此最后遍历的时候,注意不要越界,不然会出现段错误。 (2)使用cin和cout可能会超时的,使用scanf和printf...

2018-03-27 13:39:58 241

原创 1028. List Sorting (25)--cin和cout的效率真慢

题目描述: Excel can sort records according to any column. Now you are supposed to imitate this function.InputEach input file contains one test case. For each case, the first line contains two integer...

2018-03-26 16:44:19 199

原创 PAT 1081. 检查密码 (15) 坑

题目描述: 本题要求你帮助某网站的用户注册模块写一个密码合法性检查的小功能。该网站要求用户设置的密码必须由不少于6个字符组成,并且只能有英文字母、数字和小数点”.”,还必须既有字母也有数字。输入格式:输入第一行给出一个正整数 N(<=100),随后 N 行,每行给出一个用户设置的密码,为不超过80个字符的非空字符串,以回车结束。输出格式:对每个用户的密码,在一行中输出系统反...

2018-03-26 13:30:30 751

原创 PAT 1030. 完美数列(25)

题目描述: 给定一个正整数数列,和正整数p,设这个数列中的最大值是M,最小值是m,如果M <= m * p,则称这个数列是完美数列。现在给定参数p和一些正整数,请你从中选择尽可能多的数构成一个完美数列。输入格式:输入第一行给出两个正整数N和p,其中N(<= 105)是输入的正整数的个数,p(<= 109)是给定的参数。第二行给出N个正整数,每个数不超过109。输...

2018-03-08 13:54:42 272

原创 PAT 1025. 反转链表 (25)---最后一个测试点的坑点

题目描述: 给定一个常数K以及一个单链表L,请编写程序将L中每K个结点反转。例如:给定L为1→2→3→4→5→6,K为3,则输出应该为3→2→1→6→5→4;如果K为4,则输出应该为4→3→2→1→5→6,即最后不到K个元素不反转。输入格式:每个输入包含1个测试用例。每个测试用例第1行给出第1个结点的地址、结点总个数正整数N(<= 105)、以及正整数K(<=N),即要求反转...

2018-03-08 10:04:19 2344 1

原创 图的邻接矩阵和邻接表存储的深度优先遍历(DFS)算法实现

图的DFS遍历图的深度优先遍历算法,重点在深度。它的意思表示为每次沿着一条路径一直往下走,一直到不能再前进为止(当前顶点没有邻接点或者所有邻接点如果存在的话都被访问过了),然后退回到最近的岔道口,沿着另一个未被访问过的路径走下去。本文默认读者已经掌握了图的相关概念,此外邻接表的实现笔者使用的是vector数组1. 图以邻接矩阵作为存储方式 直接上代码了,我做了清楚的注释。...

2018-03-07 19:59:18 7295 1

原创 哈夫曼思想解决合并果子问题

问题介绍: 在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。 每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过n-1次合并之后,就只剩下一堆了。多多在合并果子时总共消耗的体力等于每次合并所耗体力之和。 因为还要花大力气把这些果子搬回家,所以多多在合并果子时要尽可能地节省体力。...

2018-03-07 17:41:47 1068

原创 堆的定义、使用数组实现堆的创建、调整、删除和插入、堆排序

堆的定义堆是一棵完全二叉树,并且树中的每一个结点的值都不小于(或者不大于)其左右孩子结点的值。分为两种:大顶堆:父亲结点的值不小于(大于或者等于)其左右孩子结点的值。小顶堆:父亲结点的值不大于(小于或者大于)其左右孩子结点的值。堆一般借助于优先队列来实现(前面已经写过了优先队列的文章),今天我们将会以数组实现大顶堆为例。 1. 首先实现向下调整函数: 总是将结点x和它的左右孩子(如果存在...

2018-03-07 13:19:53 2167

原创 中缀表达式转换成后缀表达式,进行简单表达式的计算

分析:步骤一:中缀表达式转换为后缀表达式设立一个操作符栈,用来临时存放操作符;设置一个队列用以存放后缀表达式序列。从左至右遍历中缀表达式,如果遇到操作数(需要注意的是操作数可能不止一位,因此需要一位位的读入然后合并成整数)就将其加入到后缀序列中。如果遇到操作符,如果是左括号‘(’就直接压入栈中,如果是右括号‘)’就依次弹出栈中元素直至左括号出现。否则将其与栈顶元素比较优先...

2018-03-06 15:41:22 577

原创 优先队列 priority_queue 的常见用法详解

1.特点: priority_queue又称优先队列,其底层是用堆来实现的。在优先队列中,默认情况下,队首元素一定是当前优先级最高的那一个。在对其进行添加元素的时候,其中的堆结构会动态的调整自身结构,以保证当前的队首元素优先级最大。 2.使用: 如果想要使用优先级队列priority_queue,需要先添加头文件#include//priority_q...

2018-03-06 11:02:13 2192

原创 PAT1060. 爱丁顿数(25)

题目描述: 英国天文学家爱丁顿很喜欢骑车。据说他为了炫耀自己的骑车功力,还定义了一个“爱丁顿数”E,即满足有E天骑车超过E英里的最大整数E。据说爱丁顿自己的E等于87。现给定某人N天的骑车距离,请你算出对应的爱丁顿数E(<=N)。输入格式:输入第一行给出一个正整数N(<=105),即连续骑车的天数;第二行给出N个非负整数,代表每天的骑车距离。输出格式:在一行中给出...

2018-03-05 09:37:29 140

原创 PAT 1072. 开学寄语(20)

题目描述: 下图是上海某校的新学期开学寄语:天将降大任于斯人也,必先删其微博,卸其QQ,封其电脑,夺其手机,收其ipad,断其wifi,使其百无聊赖,然后,净面、理发、整衣,然后思过、读书、锻炼、明智、开悟、精进。而后必成大器也!本题要求你写个程序帮助这所学校的老师检查所有学生的物品,以助其成大器。输入格式:输入第一行给出两个正整数N(<= 1000)和M(<= 6),分...

2018-03-05 09:02:19 240

原创 PAT1076. Wifi密码 (15)

题目描述: 下面是微博上流传的一张照片:“各位亲爱的同学们,鉴于大家有时需要使用wifi,又怕耽误亲们的学习,现将wifi密码设置为下列数学题答案:A-1;B-2;C-3;D-4;请同学们自己作答,每两日一换。谢谢合作!!~”—— 老师们为了促进学生学习也是拼了…… 本题就要求你写程序把一系列题目的答案按照卷子上给出的对应关系翻译成wifi的密码。这里简单假设每道选择题都有4个选项,有且只有1个...

2018-03-04 22:08:01 397

原创 PAT1029. 旧键盘(20)

题目描述: 旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及实际被输入的文字,请你列出肯定坏掉的那些键。输入格式:输入在2行中分别给出应该输入的文字、以及实际被输入的文字。每段文字是不超过80个字符的串,由字母A-Z(包括大、小写)、数字0-9、以及下划线“_”(代表空格)组成。题目保证2个字符串均非空。输出格式:按照发现顺序,在...

2018-03-04 20:46:52 311

原创 PAT.1078. 字符串压缩与解压 (20)(欢迎评论,讨论更有效率的算法)

题目描述: 文本压缩有很多种方法,这里我们只考虑最简单的一种:把由相同字符组成的一个连续的片段用这个字符和片段中含有这个字符的个数来表示。例如 ccccc 就用 5c 来表示。如果字符没有重复,就原样输出。例如 aba 压缩后仍然是 aba。解压方法就是反过来,把形如 5c 这样的表示恢复为 ccccc。本题需要你根据压缩或解压的要求,对给定字符串进行处理。这里我们简单地假设原始字符串是...

2018-03-04 20:11:08 669

原创 PAT.1052. 卖个萌 (20)--易错点

题目描述: 萌萌哒表情符号通常由“手”、“眼”、“口”三个主要部分组成。简单起见,我们假设一个表情符号是按下列格式输出的:左手[右手] 现给出可选用的符号集合,请你按用户的要求输出表情。输入格式:输入首先在前三行顺序对应给出手、眼、口的可选符号集。每个符号括在一对方括号[]内。题目保证每个集合都至少有一个符号,并不超过10个符号;每个符号包含1到4个非空字符。之后一行给出一个正...

2018-03-04 19:43:08 549

原创 PAT 1033. 旧键盘打字(20)

题目描述: 旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及坏掉的那些键,打出的结果文字会是怎样?输入格式:输入在2行中分别给出坏掉的那些键、以及应该输入的文字。其中对应英文字母的坏键以大写给出;每段文字是不超过105个字符的串。可用的字符包括字母[a-z, A-Z]、数字0-9、以及下划线“_”(代表空格)、“,”、“.”、“-”、“+...

2018-03-04 18:36:55 170

原创 PAT1018. 锤子剪刀布 (20)

题目描述: 大家应该都会玩“锤子剪刀布”的游戏:两人同时给出手势,胜负规则如图所示:现给出两人的交锋记录,请统计双方的胜、平、负次数,并且给出双方分别出什么手势的胜算最大。输入格式:输入第1行给出正整数N(<=105),即双方交锋的次数。随后N行,每行给出一次交锋的信息,即甲、乙双方同时给出的的手势。C代表“锤子”、J代表“剪刀”、B代表“布”,第1个字母代表甲方,第2个代表乙...

2018-03-04 14:49:58 133

原创 PAT 1003. 我要通过!(20)--典型的找规律

题目描述: “答案正确”是自动判题系统给出的最令人欢喜的回复。本题属于PAT的“答案正确”大派送 —— 只要读入的字符串满足下列条件,系统就输出“答案正确”,否则输出“答案错误”。得到“答案正确”的条件是:字符串中必须仅有P, A, T这三种字符,不可以包含其它字符;任意形如 xPATx 的字符串都可以获得“答案正确”,其中 x 或者是空字符串,或者是仅由字母 A 组成的字符串;如...

2018-03-04 13:55:01 239

原创 PAT 1080. MOOC期终成绩 (25)

题目描述: 对于在中国大学MOOC(http://www.icourse163.org/)学习“数据结构”课程的学生,想要获得一张合格证书,必须首先获得不少于200分的在线编程作业分,然后总评获得不少于60分(满分100)。总评成绩的计算公式为 G = (G期中x 40% + G期末x 60%),如果 G期中 > G期末;否则总评 G 就是 G期末。这里 G期中 和 G期末 分别为学生的期...

2018-03-03 22:00:23 396

原创 PAT 1068. 万绿丛中一点红(20) --坑点介绍

题目描述: 对于计算机而言,颜色不过是像素点对应的一个24位的数值。现给定一幅分辨率为MxN的画,要求你找出万绿丛中的一点红,即有独一无二颜色的那个像素点,并且该点的颜色与其周围8个相邻像素的颜色差充分大。输入格式:输入第一行给出三个正整数,分别是M和N(<= 1000),即图像的分辨率;以及TOL,是所求像素点与相邻点的颜色差阈值,色差超过TOL的点才被考虑。随后N行,每行给出M...

2018-03-03 19:35:42 294

原创 二叉树的创建、相关操作、递归和非递归式实现三种遍历

首先,本文默认读者已经掌握了二叉树的相关概念。本文采用二叉链表作为存储结构。 定义二叉链表的结点:struct node{ int data; //数据域 node*lchild; //指向左子树根节点的指针 node*rchild; //指向右子树根节点的指针 };下面我们新建一个二叉树结点:no...

2018-03-03 16:40:58 384

原创 动态链表的创建、插入、查找、删除的C++实现

不多说了其实就是一个结点和一个结点连在一起,单链表可以类比与排成一队的学生,面向一个方向,队长是表头结点,将他的手(next)搭在下一个人的肩膀上,下一个人也把他的手(next)搭在他的下一位的肩膀上。他们是好兄弟,手都不能撒开的。最后一个人暂时保持立正姿态,如果有新的人加入到他后面,他就把手搭在新人的肩膀上。每个人只要把他的手牢牢的抓住下一个人即可。工作指针就如同教官,从队长的位置顺着他们手的方...

2018-03-02 19:20:23 6893 2

原创 PAT 1058. 选择题(20)--使用getchar()以及string对字符串切割、存储、比对

题目描述: 批改多选题是比较麻烦的事情,本题就请你写个程序帮助老师批改多选题,并且指出哪道题错的人最多。输入格式:输入在第一行给出两个正整数N(<=1000)和M(<=100),分别是学生人数和多选题的个数。随后M行,每行顺次给出一道题的满分值(不超过5的正整数)、选项个数(不少于2且不超过5的正整数)、正确选项个数(不超过选项个数的正整数)、所有正确选项。注意每题的选项从小...

2018-03-02 11:22:36 257

原创 1044. 火星数字(20)--再次使用到sscanf

题目描述: 火星人是以13进制计数的:地球人的0被火星人称为tret。 地球人数字1到12的火星文分别为:jan, feb, mar, apr, may, jun, jly, aug, sep, oct, nov, dec。 火星人将进位以后的12个高位数字分别称为:tam, hel, maa, huh, tou, kes, hei, elo, syy, lok, mer, jou。 ...

2018-03-01 21:46:25 428

原创 PAT 1014. 福尔摩斯的约会 (20)--坑点详解

题目描述: 大侦探福尔摩斯接到一张奇怪的字条:“我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm”。大侦探很快就明白了,字条上奇怪的乱码实际上就是约会的时间“星期四 14:04”,因为前面两字符串中第1对相同的大写英文字母(大小写有区分)是第4个字母’D’,代表星期四;第2对相同的字符是’E’,那是第5个英文...

2018-03-01 18:18:37 6007 6

原创 PAT 1054. 求平均值 (20)--介绍字符串处理利器

题目描述: 本题的基本要求非常简单:给定N个实数,计算它们的平均值。但复杂的是有些输入数据可能是非法的。一个“合法”的输入是[-1000,1000]区间内的实数,并且最多精确到小数点后2位。当你计算平均值的时候,不能把那些非法的数据算在内。输入格式:输入第一行给出正整数N(<=100)。随后一行给出N个实数,数字间以一个空格分隔。输出格式:对每个非法输入,在一行中输出“ER...

2018-03-01 09:26:12 384

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除