天梯赛c4
cp0328
自由空间是各向同性的
展开
-
[PAT 甲级] 1005 Spell It Right (20 分)
1005 Spell It Right (20 分)Given a non-negative integer N, your task is to compute the sum of all the digits of N, and output every digit of the sum in English.Input Specification:Each input file co...原创 2019-03-28 16:55:54 · 3020 阅读 · 0 评论 -
[pat 乙级]1002 写出这个数 (20 分)
1002 写出这个数 (20 分)读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。输入格式:每个测试输入包含 1 个测试用例,即给出自然数 n 的值。这里保证 n 小于 10100 。输出格式:在一行内输出 n 的各位数字之和的每一位,拼音数字间有 1 空格,但一行中最后一个拼音数字后没有空格。输入样例:123456789098765432112345...原创 2019-03-25 15:42:27 · 3004 阅读 · 0 评论 -
[pat 乙级]1001 害死人不偿命的(3n+1)猜想 (15 分)
1001 害死人不偿命的(3n+1)猜想 (15 分)卡拉兹(Callatz)猜想:对任何一个正整数 n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把 (3n+1) 砍掉一半。这样一直反复砍下去,最后一定在某一步得到 n=1。卡拉兹在 1950 年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证 (3n+...原创 2019-03-25 13:34:57 · 3008 阅读 · 0 评论 -
dijkstra最短路径(L3-005 垃圾箱分布 (30 分))
原题链接L3-005 垃圾箱分布 (30 分)大家倒垃圾的时候,都希望垃圾箱距离自己比较近,但是谁都不愿意守着垃圾箱住。所以垃圾箱的位置必须选在到所有居民点的最短距离最长的地方,同时还要保证每个居民点都在距离它一个不太远的范围内。现给定一个居民区的地图,以及若干垃圾箱的候选地点,请你推荐最合适的地点。如果解不唯一,则输出到所有居民点的平均距离最短的那个解。如果这样的解还是不唯一,则输出编号最...原创 2019-02-26 17:43:44 · 4594 阅读 · 2 评论 -
完全二叉树 层序 | L3-010 是否完全二叉搜索树
原题链接L3-010 是否完全二叉搜索树 (30 分)将一系列给定数字顺序插入一个初始为空的二叉搜索树(定义为左子树键值大,右子树键值小),你需要判断最后的树是否一棵完全二叉树,并且给出其层序遍历的结果。输入格式:输入第一行给出一个不超过20的正整数N;第二行给出N个互不相同的正整数,其间以空格分隔。输出格式:将输入的N个正整数顺序插入一个初始为空的二叉搜索树。在第一行中输出结果树的层...原创 2019-03-02 14:27:05 · 3011 阅读 · 0 评论 -
三维空间bfs(L3-004 肿瘤诊断 (30 分))
原题链接L3-004 肿瘤诊断 (30 分)在诊断肿瘤疾病时,计算肿瘤体积是很重要的一环。给定病灶扫描切片中标注出的疑似肿瘤区域,请你计算肿瘤的体积。输入格式:输入第一行给出4个正整数:M、N、L、T,其中M和N是每张切片的尺寸(即每张切片是一个M×N的像素矩阵。最大分辨率是1286×128);L(≤60)是切片的张数;T是一个整数阈值(若疑似肿瘤的连通体体积小于T,则该小块忽略不计)。...原创 2019-02-26 12:21:47 · 3355 阅读 · 0 评论 -
模拟大数运算(L1-046 整除光棍 (20 分))
原题链接L1-046 整除光棍 (20 分)这里所谓的“光棍”,并不是指单身汪啦~ 说的是全部由1组成的数字,比如1、11、111、1111等。传说任何一个光棍都能被一个不以5结尾的奇数整除。比如,111111就可以被13整除。 现在,你的程序要读入一个整数x,这个整数一定是奇数并且不以5结尾。然后,经过计算,输出两个数字:第一个数字s,表示x乘以s是一个光棍,第二个数字n是这个光棍的位数。这...原创 2019-02-20 20:28:22 · 3075 阅读 · 0 评论 -
L1-044 稳赢 (15 分)
原题链接L1-044 稳赢 (15 分)大家应该都会玩“锤子剪刀布”的游戏:两人同时给出手势,现要求你编写一个稳赢不输的程序,根据对方的出招,给出对应的赢招。但是!为了不让对方输得太惨,你需要每隔K次就让一个平局。输入格式:输入首先在第一行给出正整数K(≤10),即平局间隔的次数。随后每行给出对方的一次出招:ChuiZi代表“锤子”、JianDao代表“剪刀”、Bu代表“布”。End代表...原创 2019-02-20 19:33:40 · 3388 阅读 · 0 评论 -
模拟(L1-043 阅览室 (20 分))
原题链接L1-043 阅览室 (20 分)天梯图书阅览室请你编写一个简单的图书借阅统计程序。当读者借书时,管理员输入书号并按下S键,程序开始计时;当读者还书时,管理员输入书号并按下E键,程序结束计时。书号为不超过1000的正整数。当管理员将0作为书号输入时,表示一天工作结束,你的程序应输出当天的读者借书次数和平均阅读时间。注意:由于线路偶尔会有故障,可能出现不完整的纪录,即只有S没有E,或者...原创 2019-02-20 19:10:32 · 3450 阅读 · 0 评论 -
bfs(L3-008 喊山 (30 分))
原题链接L3-008 喊山 (30 分)喊山,是人双手围在嘴边成喇叭状,对着远方高山发出“喂—喂喂—喂喂喂……”的呼唤。呼唤声通过空气的传递,回荡于深谷之间,传送到人们耳中,发出约定俗成的“讯号”,达到声讯传递交流的目的。原来它是彝族先民用来求援呼救的“讯号”,慢慢地人们在生活实践中发现了它的实用价值,便把它作为一种交流工具世代传袭使用。(图文摘自:http://news.xrxxw.com/...原创 2019-03-02 00:11:36 · 3273 阅读 · 0 评论 -
Dijkstra(L3-007 天梯地图 (30 分))
原题链接L3-007 天梯地图 (30 分)本题要求你实现一个天梯赛专属在线地图,队员输入自己学校所在地和赛场地点后,该地图应该推荐两条路线:一条是最快到达路线;一条是最短距离的路线。题目保证对任意的查询请求,地图上都至少存在一条可达路线。输入格式:输入在第一行给出两个正整数N(2 ≤ N ≤ 500)和M,分别为地图中所有标记地点的个数和连接地点的道路条数。随后M行,每行按如下格式给出一...原创 2019-03-01 22:19:40 · 3237 阅读 · 9 评论 -
自定义排序 + 并列名次(L2-027 名人堂与代金券 (25 分))
原题链接L2-027 名人堂与代金券 (25 分)对于在中国大学MOOC(http://www.icourse163.org/ )学习“数据结构”课程的学生,想要获得一张合格证书,总评成绩必须达到 60 分及以上,并且有另加福利:总评分在 [G, 100] 区间内者,可以得到 50 元 PAT 代金券;在 [60, G) 区间内者,可以得到 20 元PAT代金券。全国考点通用,一年有效。同时任...原创 2019-02-20 13:32:37 · 3597 阅读 · 0 评论 -
搜索树的结点的深度(L2-026 小字辈 (25 分)
原题链接L2-026 小字辈 (25 分)本题给定一个庞大家族的家谱,要请你给出最小一辈的名单。输入格式:输入在第一行给出家族人口总数 N(不超过 100 000 的正整数) —— 简单起见,我们把家族成员从 1 到 N 编号。随后第二行给出 N 个编号,其中第 i 个编号对应第 i 位成员的父/母。家谱中辈分最高的老祖宗对应的父/母编号为 -1。一行中的数字间以空格分隔。输出格式:首...原创 2019-02-20 12:22:19 · 3398 阅读 · 0 评论 -
[pat 乙级]1003 我要通过! (20 分)
1003 我要通过! (20 分)1003 我要通过! (20 分)“答案正确”是自动判题系统给出的最令人欢喜的回复。本题属于 PAT 的“答案正确”大派送 —— 只要读入的字符串满足下列条件,系统就输出“答案正确”,否则输出“答案错误”。得到“答案正确”的条件是:1.字符串中必须仅有 P、 A、 T这三种字符,不可以包含其它字符;2.任意形如 xPATx 的字符串都可以获得“答案正确”...原创 2019-03-25 21:48:09 · 3114 阅读 · 0 评论 -
[pat 乙级] 1004 成绩排名 (20 分)
1004 成绩排名 (20 分)读入 n(>0)名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号。输入格式:每个测试输入包含 1 个测试用例,格式为第 1 行:正整数 n第 2 行:第 1 个学生的姓名 学号 成绩第 3 行:第 2 个学生的姓名 学号 成绩… … …第 n+1 行:第 n 个学生的姓名 学号 成绩其中姓名和学号均为不超过 10 个字符的...原创 2019-03-25 22:18:36 · 402 阅读 · 0 评论 -
[PAT 乙级 ]1005 继续(3n+1)猜想 (25 分)
1005 继续(3n+1)猜想 (25 分)卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里,情况稍微有些复杂。当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数。例如对 n=3 进行验证的时候,我们需要计算 3、5、8、4、2、1,则当我们对 n=5、8、4、2 进行验证的时候,就可以直接判定卡拉兹猜想的真伪,而不需要重复计算,因为这 4 个...原创 2019-03-26 10:21:53 · 3070 阅读 · 0 评论 -
[PAT 甲级]1004 Counting Leaves (30 分) 【dfs 树的遍历】
1004 Counting Leaves (30 分)原题链接A family hierarchy is usually presented by a pedigree tree. Your job is to count those family members who have no child.Input Specification:Each input file contains ...原创 2019-03-28 15:55:07 · 3116 阅读 · 0 评论 -
[PAT 甲级] 1003 Emergency (25 分) 【Dijkstra】
1003 Emergency (25 分)As an emergency rescue team leader of a city, you are given a special map of your country. The map shows several scattered cities connected by some roads. Amount of rescue teams ...原创 2019-03-27 22:59:50 · 3121 阅读 · 0 评论 -
[PAT 甲级] 1002 A+B for Polynomials (25 分)
1002 A+B for Polynomials (25 分)原题链接This time, you are supposed to find A+B where A and B are two polynomials.Input Specification:Each input file contains one test case. Each case occupies 2 lines,...原创 2019-03-27 14:53:09 · 3107 阅读 · 0 评论 -
[PAT 甲级] 1001 A+B Format (20 分)
1001 A+B Format (20 分)Calculate a+b and output the sum in standard format – that is, the digits must be separated into groups of three by commas (unless there are less than four digits).Input Specif...原创 2019-03-27 14:04:34 · 3150 阅读 · 0 评论 -
[PAT 甲级] 1007 Maximum Subsequence Sum (25 分)【动态规划】
1007 Maximum Subsequence Sum (25 分)原题链接Given a sequence of K integers { N }. A continuous subsequence is defined to be { N } where 1≤i≤j≤K. The Maximum Subsequence is the continuous subseque...原创 2019-03-31 14:50:00 · 3277 阅读 · 0 评论 -
[PAT 甲级] 1006 Sign In and Sign Out (25 分)
1006 Sign In and Sign Out (25 分)At the beginning of every day, the first person who signs in the computer room will unlock the door, and the last one who signs out will lock the door. Given the recor...原创 2019-03-31 13:48:55 · 3103 阅读 · 0 评论 -
大数运算
大数运算有时候我们会遇到一些非常大的数,正常的加减运算无法解决问题,所以我们常常自己模拟运算过程。下面是我自己总结的大数运算的模版,提供给大家学习。加法#include<iostream>#include<vector>using namespace std;string calculate(string a, string b) { int len_a...原创 2019-03-26 22:33:09 · 3050 阅读 · 0 评论 -
[PAT 乙级]1010 一元多项式求导 (25 分)
1010 一元多项式求导 (25 分)原题链接设计函数求一元多项式的导数。(注:xn (n为整数)的一阶导数为nxn−1 。)输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过 1000 的整数)。数字间以空格分隔。输出格式:以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。注意“零多项式”的指数和系数都是 0,但是表示...原创 2019-03-26 17:37:16 · 3165 阅读 · 0 评论 -
[PAT 乙级] 1009 说反话 (20 分)
1009 说反话 (20 分)原题链接给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过 80 的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用 1 个空格分开,输入保证句子末尾没有多余的空格。输出格式:每个测试用例的输出占一行,输出倒序后的句子。输入样例:...原创 2019-03-26 16:03:22 · 3155 阅读 · 0 评论 -
[PAT 乙级]1008 数组元素循环右移问题 (20 分)
1008 数组元素循环右移问题 (20 分)原题链接一个数组A中存有N(>0)个整数,在不允许使用另外数组的前提下,将每个整数循环 )(最后M个数循环移至最前面的M个位置)。如果需要考虑程序移动数据的次数尽量少,要如何设计移动的方法?输入格式:每个输入包含一个测试用例,第1行输入N(1≤N≤100)和M(≥0);第2行输入N个整数,之间用空格分隔。输出格式:在一行中输出循环...原创 2019-03-26 15:49:54 · 3196 阅读 · 0 评论 -
[PAT 乙级] 1006 换个格式输出整数 (15 分)
1006 换个格式输出整数 (15 分)让我们用字母 B 来表示“百”、字母 S 表示“十”,用 12…n 来表示不为零的个位数字 n(<10),换个格式来输出任一个不超过 3 位的正整数。例如 234 应该被输出为 BBSSS1234,因为它有 2 个“百”、3 个“十”、以及个位的 4。输入格式:每个测试输入包含 1 个测试用例,给出正整数 n(<1000)。输出格式:每...原创 2019-03-26 11:16:44 · 3012 阅读 · 0 评论 -
并查集(L3-003 社交集群 (30 分))
原题链接L3-003 社交集群 (30 分)当你在社交网络平台注册时,一般总是被要求填写你的个人兴趣爱好,以便找到具有相同兴趣爱好的潜在的朋友。一个“社交集群”是指部分兴趣爱好相同的人的集合。你需要找出所有的社交集群。输入格式:输入在第一行给出一个正整数 N(≤1000),为社交网络平台注册的所有用户的人数。于是这些人从 1 到 N 编号。随后 N 行,每行按以下格式给出一个人的兴趣爱好列...原创 2019-02-25 21:19:21 · 3649 阅读 · 0 评论 -
几何规律(L3-006 迎风一刀斩 (30 分))
原题链接L3-006 迎风一刀斩 (30 分)迎着一面矩形的大旗一刀斩下,如果你的刀够快的话,这笔直一刀可以切出两块多边形的残片。反过来说,如果有人拿着两块残片来吹牛,说这是自己迎风一刀斩落的,你能检查一下这是不是真的吗?注意摆在你面前的两个多边形可不一定是端端正正摆好的,它们可能被平移、被旋转(逆时针90度、180度、或270度),或者被(镜像)翻面。这里假设原始大旗的四边都与坐标轴是平...原创 2019-03-01 15:05:26 · 6060 阅读 · 1 评论 -
线段树和树状数组(L3-002 特殊堆栈 (30 分))
目录1.线段树2.树状数组3.代码实现4.例题线段树返回目录概念 线段树也可与称为区间树 线段树同时也是一个二叉树 树上的每个节点对应于一个区间(线段),区间的头和尾都是整数 同一层的节点所代表的的区间不会重叠 叶子结点的区间就是单位长度,不可拆分总结:线段树是一棵二叉树,树中的每一个结 点表示了一个区间[a,b]。a,b通常是整数。 每一个叶子...原创 2019-02-25 17:27:05 · 4195 阅读 · 0 评论 -
模拟计算(L2-018 多项式A除以B (25 分))
这一题是一道模拟计算题,只要足够细心就可以解决问题。原题链接L2-018 多项式A除以B (25 分)这仍然是一道关于A/B的题,只不过A和B都换成了多项式。你需要计算两个多项式相除的商Q和余R,其中R的阶数必须小于B的阶数。输入格式:输入分两行,每行给出一个非零多项式,先给出A,再给出B。每行的格式如下:N e[1] c[1] … e[N] c[N]其中N是该多项式非零项的个数,e...原创 2019-02-09 16:09:57 · 3406 阅读 · 0 评论 -
set map 应用(L2-019 悄悄关注 (25 分))
set 和 map是我们在刷题过程中经常使用的stl工具之一,他的丰富的操作方法使我们的思路变得都十分的清晰,代码变得十分的简洁。那我们在什么情况下会考虑到使用set和map呢?当题目要求对信息进行排序时,比如升序输出或者降序输出。当题目的信息是一对一的时候,比如名字对应着成绩。当需要对信息进行统计的时候。原题链接L2-019 悄悄关注 (25 分)新浪微博上有个“悄悄关注”...原创 2019-02-09 20:21:23 · 3417 阅读 · 0 评论 -
dfs(L2-020 功夫传人 (25 分))
这是一题利用dfs搜索师徒关系树的题目,实现起来不是很难,但是有一些需要注意的地方。原题链接L2-020 功夫传人 (25 分)一门武功能否传承久远并被发扬光大,是要看缘分的。一般来说,师傅传授给徒弟的武功总要打个折扣,于是越往后传,弟子们的功夫就越弱…… 直到某一支的某一代突然出现一个天分特别高的弟子(或者是吃到了灵丹、挖到了特别的秘笈),会将功夫的威力一下子放大N倍 —— 我们称这种...原创 2019-02-10 12:54:59 · 3388 阅读 · 0 评论 -
结构体排序 set(L2-021 点赞狂魔 (25 分)
这一题 主要考查了结构体排序和set的使用,这两部分在之前的博客中有详细的解答。结构体排序博文链接set博文链接原题链接L2-021 点赞狂魔 (25 分)微博上有个“点赞”功能,你可以为你喜欢的博文点个赞表示支持。每篇博文都有一些刻画其特性的标签,而你点赞的博文的类型,也间接刻画了你的特性。然而有这么一种人,他们会通过给自己看到的一切内容点赞来狂刷存在感,这种人就被称为“点赞狂魔”。...原创 2019-02-10 14:43:46 · 3202 阅读 · 0 评论 -
set 常用操作 (例题:L2-005 集合相似度 (25 分))
一.set的特性:1.所有元素都会根据元素的键值自动排序,默认从小到大,也可以通过对“&amp;amp;lt;”重载 进行自定义。2.set的元素不像map那样可以同时拥有实值(value)和键值(key),set元素的键值就是实值,实值就是键值。3.set不允许两个元素有相同的键值,如果通过insert插入相同的值,将自动忽略该操作。二. set的头文件 &amp;amp;lt; set&amp;amp;gt;三. set的基本操作...原创 2019-01-25 13:09:18 · 3699 阅读 · 0 评论 -
vector map 常用操作(例题 L2-004 这是二叉搜索树吗?)
vector 不定常数组1.头文件 #include &amp;amp;lt; vector &amp;amp;gt;2.重用操作#include&amp;amp;lt;vector&amp;amp;gt; vector&amp;amp;lt;int&amp;amp;gt;cp //声明cp vector&amp;amp;lt;int&amp;amp;gt;cp原创 2019-01-24 20:05:16 · 3494 阅读 · 0 评论 -
dijkstra算法讲解(例题:L2-001 紧急救援 (25 分))
dijkstra算法是用于解决单源最短路径问题,对于有环或者无环图的图论问题都可以很有效的解决,时间复杂度最坏为O(n^2)。但,此算法无法解决权值为负的相关问题。下面进行详细的讲解————————————————————————————————————————1. 遇到哪些问题时,我们使用dijkstra算法?当题目中出现“从某一个城市出发到达另一个目的地的最短路程”相类似的句子,同时他的...原创 2019-01-21 22:00:23 · 5278 阅读 · 0 评论 -
非确定性问题(L2-023 图着色问题 (25 分))
原题链接L2-023 图着色问题 (25 分)图着色问题是一个著名的NP完全问题。给定无向图G=(V,E),问可否用K种颜色为V中的每一个顶点分配一种颜色,使得不会有两个相邻顶点具有同一种颜色?但本题并不是要你解决这个着色问题,而是对给定的一种颜色分配,请你判断这是否是图着色问题的一个解。输入格式:输入在第一行给出3个整数V(0<V≤500)、E(≥0)和K(0<K≤V),分...原创 2019-02-16 14:50:43 · 3205 阅读 · 0 评论 -
L1-056 猜数字 (20 分)
原题链接L1-056 猜数字 (20 分)一群人坐在一起,每人猜一个 100 以内的数,谁的数字最接近大家平均数的一半就赢。本题就要求你找出其中的赢家。输入格式:输入在第一行给出一个正整数N(≤104 )。随后 N 行,每行给出一个玩家的名字(由不超过8个英文字母组成的字符串)和其猜的正整数(≤ 100)。输出格式:在一行中顺序输出:大家平均数的一半(只输出整数部分)、赢家的...原创 2019-02-21 19:34:10 · 3745 阅读 · 0 评论 -
getline函数 (L1-054 福到了 (15 分))
原题链接L1-054 福到了 (15 分)“福”字倒着贴,寓意“福到”。不论到底算不算民俗,本题且请你编写程序,把各种汉字倒过来输出。这里要处理的每个汉字是由一个 N × N 的网格组成的,网格中的元素或者为字符 @ 或者为空格。而倒过来的汉字所用的字符由裁判指定。输入格式:输入在第一行中给出倒过来的汉字所用的字符、以及网格的规模 N (不超过100的正整数),其间以 1 个空格分隔;随后...原创 2019-02-21 19:05:02 · 3023 阅读 · 0 评论