PTA
文章平均质量分 79
PTA
陆氪和他的那些代码
学习可以偷懒,面试好好发挥就行
展开
-
团体程序设计天梯赛-练习集 - L1-049. 天梯赛座位分配(20 分)
题目链接:点击打开链接题目大意:略。解题思路:模拟题(16分的天坑),16分的童鞋:关键在于,3 4 2; 3 3 4 3; 3 1 1; 观察这几组,最后一个学校的剩余的队伍的第一个队伍的第一个数据是致命点,如果是从其他学校转过来的计算开始,应该+1即可,而不是+2;如果是从当前学校转过来的计算开始,应该+2。AC 代码#include<bits/std...原创 2018-04-02 23:01:03 · 1090 阅读 · 0 评论 -
团体程序设计天梯赛-练习集 - L2-004. 这是二叉搜索树吗?(25 分)
题目链接:点击打开链接题目大意:略。解题思路:判断二叉搜索树 + 树的后序遍历。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a);using namespace std;typedef long long ll;...原创 2018-04-24 20:06:46 · 585 阅读 · 0 评论 -
基础编程题目集 - 6-10 阶乘计算升级版(20 分)
题目链接:点击打开链接题目大意:略。解题思路:大数数组,定义数组大小时,求阶乘位数请看:点击打开链接。AC 代码#include <stdio.h>void Print_Factorial ( const int N );int main(){ int N; scanf("%d", &N); Print_Factorial(N); r...原创 2018-05-25 15:51:12 · 3347 阅读 · 0 评论 -
基础编程题目集 - 7-1 厘米换算英尺英寸(15 分)
题目链接:点击打开链接题目大意:略。解题思路:注意:最后一句话的内涵,意味着 inch/12 是 foot 的小数部分。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a)#define INF 0x3f3f3f3fusing namespace std;...原创 2018-05-27 19:39:08 · 2392 阅读 · 4 评论 -
基础编程题目集 - 7-18 二分法求多项式单根(20 分)
题目链接:点击打开链接题目大意:略。解题思路:略。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a)#define INF 0x3f3f3f3fusing namespace std;typedef long long ll;double a3,a...原创 2018-05-28 16:30:38 · 1150 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 6-12 二叉搜索树的操作集(30 分)
题目链接:点击打开链接题目大意:略。解题思路:二叉搜索树操作集。AC 代码#include <stdio.h>#include <stdlib.h>typedef int ElementType;typedef struct TNode *Position;typedef Position BinTree;struct TNode{ ElementTyp...原创 2018-06-23 10:51:11 · 1026 阅读 · 4 评论 -
数据结构与算法题目集(中文) - 7-5 堆中的路径(25 分)
题目链接:点击打开链接题目大意:略。解题思路:略。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a);using namespace std;typedef long long ll;const int maxn=1010;const int m...原创 2018-06-23 18:37:57 · 750 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-6 列出连通集(25 分)
题目链接:点击打开链接题目大意:略。解题思路:略。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a);using namespace std;typedef long long ll;const int maxn=20;int G[maxn][m...原创 2018-06-23 20:02:37 · 1225 阅读 · 0 评论 -
基础编程题目集 - 7-23 币值转换(20 分)
题目链接:点击打开链接题目大意:略。解题思路:一个数字的情况 + 是0的情况(连续0只取一个0的情况 + 万位为0的情况(一亿的情况 + 非一亿的情况))+ 普遍不是0的情况。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a);using namespac...原创 2018-06-18 17:05:12 · 2617 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-7 六度空间(30 分)
题目链接:点击打开链接题目大意:略。解题思路:略。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a);using namespace std;typedef long long ll;const int maxn=10005;int vis[m...原创 2018-06-30 21:06:40 · 1193 阅读 · 0 评论 -
基础编程题目集 - 7-36 复数四则运算(15 分)
题目链接:点击打开链接题目大意:略。解题思路:doubleround(double num,unsigned int bits) 构造 或 找到临界值 0.05 来控制 if...else...;round 函数IDE可能不会提示,但是是可以用的,需要引入math头文件。AC 代码#include<bits/stdc++.h>#include<cmath>#defi...原创 2018-06-19 18:38:36 · 1742 阅读 · 0 评论 -
基础编程题目集 - 7-37 整数分解为若干项之和(20 分)
题目链接(组合版):点击打开链接题目大意:略。解题思路:此方法仅限于输出组合情况,计数的话会TLE。AC 代码(组合版)#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a)#define INF 0x3f3f3f3fusing namespace std;typ...原创 2018-06-19 19:18:40 · 1443 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-8 哈利·波特的考试(25 分)
题目链接:点击打开链接题目大意:略。解题思路:Floyd。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a);#define INF 0x3f3f3f3fusing namespace std;typedef long long ll;const ...原创 2018-07-01 14:35:29 · 633 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-10 公路村村通(30 分)
题目链接:点击打开链接题目大意:略。解题思路:最小生成树。AC 代码1#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a);#define INF 0x3f3f3f3fusing namespace std;typedef l...原创 2018-07-08 15:32:37 · 851 阅读 · 0 评论 -
基础编程题目集 - 7-38 数列求和-加强版(20 分)
题目链接:点击打开链接题目大意:略。解题思路:略。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a)#define INF 0x3f3f3f3fusing namespace std;typedef long long ll;int num[20...原创 2018-06-20 08:53:27 · 1110 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-11 关键活动(30 分)
题目链接:点击打开链接题目大意:略。解题思路:关键路径(最长路径):AOE网中,顶点被称为事件,而边(或弧)才是活动的描述,边的权值代表活动所花费的时间,因此,事件就是一个活动结束,另一个活动开始的标志,那么要完成整项工程就需要将前面的活动全部完成,所以选最长的路径作为关键路径才能确保工程被完成。关键路径,注意最后的输出规则。Ps:关键路径的注意:* 关键路径上...原创 2018-07-09 15:00:16 · 1853 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-17 汉诺塔的非递归实现(25 分)(附:递归版)
题目链接:点击打开链接题目大意:略。解题思路:如果考虑一下把64片金盘,由一根柱子上移到另一根柱子上,并且始终保持上小下大的顺序。这需要多少次移动呢?这里需要递归的方法。假设有n片,移动最少次数是f(n).显然f(1)=1,f(2)=3,f(3)=7,且f(k+1)=2*f(k)+1。此后不难证明f(n)=2^n-1。设f(n)为将n片圆盘所在塔全部移动到另一塔最少总次数;由...原创 2018-07-10 14:28:54 · 1861 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-9 旅游规划(25 分)
题目链接:点击打开链接题目大意:略。解题思路:注意:if(v==-1) return 0; 和for(int i=1;i<n-1;i++) 的理解。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a);#define INF 0x3f3f3f3fu...原创 2018-07-04 18:35:57 · 1085 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-29 修理牧场(25 分)
题目链接:点击打开链接题目大意:略。解题思路:每次取最小两个数相加 + 优先队列。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a);#define INF 0x3f3f3f3fusing namespace std;...原创 2018-07-23 11:10:34 · 1902 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-28 搜索树判断(25 分)
题目链接:点击打开链接题目大意:略。解题思路:略。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a);#define INF 0x3f3f3f3fusing namespace std;typedef long l...原创 2018-07-23 11:13:07 · 1025 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-14 电话聊天狂人(25 分)
题目链接:点击打开链接题目大意:略。解题思路:hash,自定义hash规则 + 结构体数组 + 结构体中的每个链表。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a);#define INF 0x3f3f3f3fusing namespace std;...原创 2018-07-11 15:13:11 · 1437 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-19 求链式线性表的倒数第K项(20 分)
题目链接:点击打开链接题目大意:略。解题思路:要求倒数第 K 个元素,我就保存 K 个元素,每次读入一个数据,若超过 K 大小就覆盖从最前面的开始覆盖,输出的时候输出数组当前的 a[len%=k]。。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a);#de...原创 2018-07-12 11:37:29 · 1181 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-30 目录树(30 分)
题目链接:点击打开链接题目大意:略。解题思路:略。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a);#define INF 0x3f3f3f3fusing namespace std;typedef long l...原创 2018-07-23 20:40:33 · 1296 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-31 笛卡尔树(25 分)
题目链接:点击打开链接题目大意:二叉排序树 + 最小堆判定。解题思路:这个题只要分开判断这个树的 k1 是否符合二叉排序树,k2 是否符合最小堆即可。最小堆的判断就是从根节点开始,看他的左右孩子的 k2 是否都比根节点的 k2 大,如果是则继续递归,否则 flag = 0 退出循环。k1 的判断更简单,只要中序遍历一遍 k1 的值,看知否符合从小到大的排序即可。其中在找...原创 2018-07-24 10:39:43 · 745 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-50 畅通工程之局部最小花费问题(35 分)
题目链接:点击打开链接题目大意:略。解题思路:Kruskal 算法 +首先要将已经修建的道路进行并查集合并操作,用 set 存集合中结点的个数来判断是否所有点都已经操作完成,剩余的点按照基本操作进行就好了。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) mem...原创 2018-07-24 12:04:06 · 884 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-32 哥尼斯堡的“七桥问题”(25 分)
题目链接:点击打开链接题目大意:略。解题思路:并查集 + 顶点度数偶数判断。如果图G中的一个路径包括每个边恰好一次,则该路径称为欧拉路径(Euler path)。如果一个回路是欧拉路径,则称为欧拉回路(Euler circuit)。具有欧拉回路的图称为欧拉图(简称E图)。具有欧拉路径但不具有欧拉回路的图称为半欧拉图。1、无向图存在欧拉回路的充要条件:一个无向图存在欧...原创 2018-07-24 15:07:54 · 2124 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-49 打印学生选课清单(25 分)
题目链接:点击打开链接题目大意:略。解题思路:此题主要卡 scnaf / cin;+ STL的搭配使用;不能用 map<char*, int> 替代map<string, int>,一般情况认为 char* 和 string 效果通用,但是在这里不是一回事了。指针毕竟还是指针。我们可以用 char[ ] 输入直接放到 map[] 里,底层会自动转换成...原创 2018-07-24 15:41:35 · 1632 阅读 · 5 评论 -
数据结构与算法题目集(中文) - 7-33 地下迷宫探索(30 分)
题目链接:点击打开链接题目大意:略。解题思路:略。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a);#define INF 0x3f3f3f3fusing namespace std;typedef long l...原创 2018-07-24 16:59:29 · 995 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-21 求前缀表达式的值(25 分)
题目链接:点击打开链接题目大意:略。解题思路:1、前缀表达式的求值:从右至左扫描表达式,遇到数字时,将数字压入堆栈,遇到运算符时,弹出栈顶的两个数,用运算符对它们做相应的计算,并将结果入栈;重复上述过程直到表达式最左端,最后运算得出的值即为表达式的结果。2、注意数字可能是 double 类型,遇到 “/”,考虑分母为 “0” 的情况。AC 代码#include<bits/stdc++.h&g...原创 2018-07-13 15:10:26 · 1022 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-35 城市间紧急救援(25 分)
题目链接:点击打开链接题目大意:略。解题思路:略。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a);#define INF 0x3f3f3f3fusing namespace std;typedef long l...原创 2018-07-25 16:43:21 · 1514 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-20 表达式转换(25 分)
题目链接:点击打开链接题目大意:将中缀表达式转换为后缀表达式。解题思路:与转换为前缀表达式相似,遵循以下步骤:(1) 初始化两个栈:运算符栈S1和储存中间结果的栈S2;(2) 从左至右扫描中缀表达式;(3) 遇到操作数时,将其压入S2;(4) 遇到运算符时,比较其与S1栈顶运算符的优先级:(4-1) 如果S1为空,或栈顶运算符为左括号“(”,则直接将此运算符入栈;(...原创 2018-07-20 11:38:31 · 1565 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-25 朋友圈(25 分)
题目链接:点击打开链接题目大意:略。解题思路:入门级并查集。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a);#define INF 0x3f3f3f3fusing namespace std;typedef l...原创 2018-07-20 13:39:22 · 1011 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)- 1077 互评成绩计算(20 分)
题目链接:点击打开链接题目大意:略。解题思路:四舍五入到整数小技巧:printf("%d",(int)(x+0.5)); // 比下面这种写法有时更加精确 printf("%.0f",double(x));Ps:%.0f 有时候在不同的编译器可能答案会不一样,比如:C::B 16.01 中有误差,而 C::B 12.x 就正常。AC 代码#incl...原创 2018-07-28 18:01:15 · 325 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-27 家谱处理(30 分)
题目链接:点击打开链接题目大意:略。解题思路:略。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset(a,b,sizeof a);#define INF 0x3f3f3f3fusing namespace std;typedef long l...原创 2018-07-20 16:45:33 · 1725 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-36 社交网络图中结点的“重要性”计算(30 分)
题目链接:点击打开链接题目大意:略。解题思路:1、是否连通图:是,则继续2、3;否,则输出“0.00”。2、所求的结点出发到其余的结点的最少边数(最短距离)的总和。3、(n-1)/ 第2步的结果。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) memset...原创 2018-07-26 11:42:31 · 1624 阅读 · 0 评论 -
PAT (Advanced Level) Practice - 1010 Radix(25 分)
题目链接:点击打开链接题目大意:给定两个数,其中单个位置上的数值范围可以为 [0-z]。指定其中一个数的进制,试确定是否存在可能的进制让两数的实际值相等。(如果有多个答案,要求最小进制值)解题思路:1、input 中两个数字可以是 10 位数,虽然没有告诉 radix 的范围,但在9*10^10 10 1 200这个示例中,可以看到结果的 radix 也可以是很大的。从这个角...原创 2018-07-29 18:45:24 · 341 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-42 整型关键字的散列映射(25 分)
题目链接:点击打开链接题目大意:略。解题思路:注意:对于重复的数字,只输出它第一次出现的位置,而不是实际存储的位置。除留余数法:设散列表中允许的地址数为m,取一个不大于m,但接近或者等于 m 的质数 p 作为除数,按照哈希函数:Hash(key) = key % p p<=m,将关键码转换成哈希地址。线性探测法:添加元素时,使用散列函数确定元素的插入位置,如果此...原创 2018-07-26 16:46:18 · 1606 阅读 · 0 评论 -
数据结构与算法题目集(中文) - 7-43 字符串关键字的散列映射(25 分)
题目链接:点击打开链接题目大意:略。解题思路:注意1:对于重复的数字,只输出它第一次出现的位置,而不是实际存储的位置。注意2:每个字符串长度可能小于3。注意3:每个字符占5位意义:类似二进制 (1位,即:2^1==2) 转十进制,一定是唯一的,而在这里是5位,即:2^5==32,所以转十进制就和其他进制转十进制是一样的,而且肯定唯一。移位法:将分割后的每部分低...原创 2018-07-26 19:39:59 · 1091 阅读 · 0 评论 -
PAT (Advanced Level) Practice - 1012 The Best Rank(25 分)
题目链接:点击打开链接题目大意:取要查询的学号的最优排名:指的是优先名次最高的选择,但若有多个名次一样的,则按 A > C > M > E 优先级来。若学号不存在,输出 “N/A”。解题思路:略。AC 代码#include<bits/stdc++.h>#include<cmath>#define mem(a,b) ...原创 2018-07-30 11:01:58 · 305 阅读 · 0 评论 -
PAT (Advanced Level) Practice - 1013 Battle Over Cities(25 分)
题目链接:点击打开链接题目大意:给出一张无向图,以及几条边。要求当去掉其中的一个顶点后为了使剩下的顶点可以连通需要增加多少条边。解题思路:其实只要考虑去掉这个顶点后,剩余的顶点可以组成几个独立的区域,假设该区域数为t,则需要增加的边即为t-1。(即:求剩余的连通分量个数-1)。AC 代码#include<bits/stdc++.h>#include...原创 2018-07-30 11:47:14 · 310 阅读 · 0 评论