随笔分类 - 刷题笔记 / PAT
摘要:2010年风靡全球的“水果忍者”游戏,想必大家肯定都玩过吧?(没玩过也没关系啦~)在游戏当中,画面里会随机地弹射出一系列的水果与炸弹,玩家尽可能砍掉所有的水果而避免砍中炸弹,就可以完成游戏规定的任务。如果玩家可以一刀砍下画面当中一连串的水果,则会有额外的奖励,如图1所示。 现在假如你是“水果忍者”游
阅读全文
摘要:文章目录 问题引入题目分析朴素Dijkstra堆优化Dijkstra 在阅读本博客之前需要先对Dijkstra算法有一定的了解。 往常的Dijkstra一般都是以路径长度作为单一的权重,但是有些问题可能会要求存在路径相同时取通过费用最少、如果通过费用还一样就取用最新修建的道路等等可以叠加无限多个条件
阅读全文
摘要:现在有一个弹珠游戏,弹珠从横坐标为S的点掉落,下方依次有n(1 <= n <= 50000)个挡板,左右端点的横坐标为l[i]和r[i] (-100000 <= l[i] < r[i] <= 100000),弹珠落在挡板上你可以选择向左或者向右,直到弹珠落地,滚向位于横坐标为零的终点,请你求出弹珠水
阅读全文
摘要:农场主约翰喜爱对称的事物,眼下他准备把他牧场里的牛放置到N∗M(1≤N≤1,000,000,000; 1≤M≤1,000,000,000)的格子里。为了保持对称性,他用下面的方法放置牛。先放一只牛到牧场的中心格子,如果没有这样的中心格子,他就停止他放置的工作。然后他将牧场分割成四个相同大小的区域(这
阅读全文
摘要:输入样例1: jilin[i lofe{{-v-} ] universiti=y 输出样例1: i love jilin university 输入样例2: abcd[c-de 输出样例2: cdecd 输入样例3: [[]][][]happy=birthday 输出样例3: happbirthda
阅读全文
摘要:佐罗(Zorro)是一个传奇人物,出现在很多电影(小说、动画、电视剧)中,他经常用利剑划下 Z 字标记,让我们印象深刻。(出题者是不是暴露年龄了 -_-#) 佐罗发现了一块古老的石板,板上刻有若干个排成方阵的圆环,于是佐罗禁不住手痒,开始用剑在石板上划四种大小不同的 Z 字: 上图分别展示了在 5*
阅读全文
摘要:西安工业大学是国家二级保密单位,常常接到一些军方保密项目。但是保密的项目要求很严格。1.不能使用自己的计算机,需要使用特配的。2.计算机不能接入互联网。3.代码的合并以及转移不能通过U盘,只能通过特定的光盘。4.代码的格式也有严格要求。 以下为某次保密项目部分代码要求: 小明完成了任务,但不知道自己
阅读全文
摘要:输入样例: abcabcabcabcacabxy 3 abcabcacab cabcabcd abcabcabcabcacabxyz 输出样例: abcabcacabxy Not Found Not Found 思路: 寻找子串问题?在学习C++STL的时候依稀记得可以使用find函数来寻找某子串在
阅读全文
摘要:假定有n个城堡,编号为1至n,有的城堡之间有道路直接相连,有的城堡之间没有道路直接相连。马里奥现在准备从一个城堡出发前往另一个城堡,它有一个魔法棒,可以瞬时通过一条道路,即以0时间通过这条道路,但魔法棒最多只能用一次。马里奥想以最短的时间到达目的地,请编写程序为马里奥选定一条路线以及在什么地方使用魔
阅读全文
摘要:输入样例: 例如: hmm 10 Zoehmm F 28 2001.01.01 hmmBeith F 18 2010.10.21 Zack M 35 1999.09.18 hmmAdam F 21 2010.10.21 Beithhmm F 21 2010.10.21 Chelse F 45 200
阅读全文
摘要:到底应该怎样理解进制呢?首先得有“一个”的数量概念,然后就是这样的: 把用来表示数量的符号依次排列,例如: q w e r 然后定义最前面的符号为“零”,即“没有”,后面的符号表示的数量依次比前一个符号多“一个” 进制就这样产生了: 例如当我们数数,依次数到 q w e r ,再往后数一个,符号不够
阅读全文
摘要:给出一个由正整数和负整数组成的二维数组,一个子矩形是指位于整 个数组中大小为1*1或更大的任何连续子数组。矩形的和是该矩形中所 有元素的和。在本题中,具有最大和的子矩形被称为最大子矩形。 例如,给出一个二维数组如下: 最大子矩形是在左下角: 矩形的和是15。 输入格式: 输入给出一个N*N个整数组成
阅读全文
摘要:编写程序,对读入的一个简单的四则运算式进行计算。 输入格式: 正常情况下是两个整数中间用一个运算符分隔(运算符是+-*/之一,也可能是其它的错误输入),数据与运算符之间再无其它内容。 输出格式: 如果是正常的运算,直接输出运算结果,如果出现零作分母,输出Error0,如果出现了+-*/以外的错误运算
阅读全文
摘要:为了可持续发展,让别人也可用此题作为训练题,便不搬题目上来了。 原题链接:https://pintia.cn/problem-sets/1375335383906332672/problems/1375380533974085632 思路: 利用Map容器存储小猫名字与最大最小推荐体重的关系(用了一
阅读全文
摘要:提示: 只给出先序遍历,就能还原出一颗树?莫要逗我! 诶,还真可以,为什么平时老师说必须要先序+中序才能还原一颗树(当然其他序也可以,仅做举例),是因为如果只给出先序遍历,不知道哪里应该在什么时候设置为空子树,也就是不知道该在什么地方终止往下递归。 但是如果用#表示不能继续往下递归了,那不就是说明了
阅读全文
摘要:输入样例: 4 4 1 1 2 2 1 4 8 3 2 16 3 4 10 1 输出样例: 1->1:0 1->2:2 1->3:no path 1->4:8 思路: 标题即思路,只需要熟记Dijkstra算法就可以把这道题做出来,关于Dijkstra算法网上的教程有很多,大家可以去学习一下。Dij
阅读全文
摘要:输入样例: 在这里给出一组输入。例如: 4 6 1 2 1 1 3 4 1 4 1 2 3 3 2 4 2 3 4 5 输出样例: 在这里给出相应的输出。例如: 1,2,1 1,4,1 2,3,3 思路: 题目过目一遍,基本可以确认就是最小生成树的题目了,最小生成树那不是模板题吗?所以题目不难,结合
阅读全文
摘要:输入样例: 6 8 2 1 2 2 3 3 4 4 5 5 6 6 4 3 6 1 5 输出样例: 2 3 1 6 4 5 思路: 又是一道很经典的模板题,只需要套BFS模板即可,唯一的考点就是表头插入法构造邻接表,可能在平时做题的时候都是用邻接矩阵,所以不太熟悉邻接表构图法。 参考《图和树的存储方
阅读全文
摘要:某日,小明特别无聊,就想找点东西玩,于是他发现括号()特别好玩,而且新学会了一项技能, 将一对小括号(),插入到一个括号序列中,其中插入的规则是,左括号'('的位置要小于右括号')'的位置,不要求插入的左右括号相邻, 例如以下,为了方便区分,我们拿ab代表原括号序列 将()插入到()中可形成()ab
阅读全文
摘要:这天,还在读小学的白白在地上摆弄着火柴,你上前问道,白白说“这是老师布置的作业,给了我14根火柴,问我们可以摆成多少个加法式子。” 你哈哈大笑起来,为了让小屁孩刮目相看,你随手掏出笔记本电脑,啪啪啪地敲起来了。 小孩看到你一下摆出了"0+7=7"、"1+2=3"、"1+7=8"……,立马开心地叫你大
阅读全文