2019年3月10日

L1-025 正整数A+B

摘要: 15分的题写了半个小时。。。记录一下警示自己 isdigit里面应该是字符,zzl 看了一下百度首页的代码,感觉不如自己的简洁 #include<iostream> #include<cstdio> #include<string.h> #include<string> #include<math. 阅读全文

posted @ 2019-03-10 10:53 FTA_Macro 阅读(144) 评论(0) 推荐(0) 编辑

2019年3月9日

L3-010 是否完全二叉搜索树

摘要: 这道题的难度在判断完全二叉树上。 首先复习一下概念 满二叉树 一棵深度为k,且有2^k-1个节点的树是满二叉树。 另一种定义:除了叶结点外每一个结点都有左右子叶且叶子结点都处在最底层的二叉树。这两种定义是等价的。 从树的外形来看,满二叉树是严格三角形的,如下图: 所有内部节点都有两个子节点,最底一层 阅读全文

posted @ 2019-03-09 20:59 FTA_Macro 阅读(418) 评论(0) 推荐(0) 编辑

L3-004 肿瘤诊断 [BFS]

摘要: 三维BFS求连通块,当模版文章发了。 注意一下三维数组的参量对应的范围。 #include <iostream> #include <string.h> #include <cstdio> #include <algorithm> #include <cstdlib> #include <math. 阅读全文

posted @ 2019-03-09 16:08 FTA_Macro 阅读(161) 评论(0) 推荐(0) 编辑

L2-002 链表去重

摘要: 这题用两个数组记录删除后的链表当前节点地址和下一个地址是一个不错的思路。 #include <iostream> #include <string.h> #include <cstdio> #include <algorithm> #include <cstdlib> #include <math. 阅读全文

posted @ 2019-03-09 11:46 FTA_Macro 阅读(189) 评论(0) 推荐(0) 编辑

L2-001 紧急救援 [Dijkstra]

摘要: 这题是一道给我这个菜鸡复习Dijkstra的好题。 因为要求比较多,先把大致需要的数组罗列一下。 dis[]记录最短路 path[]记录路径 pnum[]记录最短路数目 cnt[]记录最多人数 vis[]记录是否走过这个点 首先需要将vis和cnt置零,dis置∞(用邻接矩记录边也要记得置∞) 接着 阅读全文

posted @ 2019-03-09 10:25 FTA_Macro 阅读(201) 评论(0) 推荐(0) 编辑

2019年3月7日

L3-008 喊山 [BFS]

摘要: 这题是一个简单的BFS。可以把这些点看成是迷宫上的格子,跟这座山相连就在这个格子旁画一个格子。这样就变成走迷宫问题了。 用邻接表建图。因为是一维的,可以直接用数组记录当前步数。代码应该很容易看懂,详见代码~ #include <iostream> #include <string.h> #inclu 阅读全文

posted @ 2019-03-07 10:13 FTA_Macro 阅读(162) 评论(0) 推荐(0) 编辑

2019年3月5日

L3-009 长城 [计算几何]

摘要: 用一个堆栈维护当前点所必须的烽火台编号。比如,按顺序给出A,B,C三点后,假设CB和BA叉积后我们发现BA在CA的逆时针方向(这个判断方法可以自己规定),所以在A点建立了烽火台,同时把B弹出栈。接着再给出D点,这时我们需要判断D是否在A的视野范围内,即判断CA是否在DC的逆时针方向。 复习一下叉积, 阅读全文

posted @ 2019-03-05 22:44 FTA_Macro 阅读(227) 评论(0) 推荐(0) 编辑

2019年3月4日

L3-020 至多删三个字符 [DP]

摘要: 这题在网上看到一个非常容易理解的思路,和大家分享一下。 记dp[i][j]为前i个字符删除j个字符后得到不同字符串的数量,可以得到以下两个转移方程 dp[i][j+1]=dp[i][j+1]+dp[i-1][j] (删除s[i]) dp[i][j]=dp[i][j]+dp[i-1][j] (不删除s 阅读全文

posted @ 2019-03-04 20:05 FTA_Macro 阅读(563) 评论(0) 推荐(0) 编辑

2019年3月3日

L3-021 神坛 [极角排序]

摘要: 一开始想用暴力,看了看数据5000,C(5000,3),大概一万多位数吧。此路不通。 不过还是要暴力。以每个点做原点,构建坐标系,把剩下的点用极角排序后,求相邻两个点之间与该点的面积,在其中取得的最小值即为答案。 这里有一个东西需要证明,只取相邻两点作三角形的话是否包含了所有可以构造的三角形。比如六 阅读全文

posted @ 2019-03-03 17:27 FTA_Macro 阅读(196) 评论(0) 推荐(0) 编辑

2019年3月2日

PAT L2-004 这是二叉搜索树吗 [二叉搜索树]

摘要: 这题的主要思路就是根据题目给的前序遍历构造一颗二叉搜索树和其镜像。对构造好的树前序遍历一下,判断是否与题目给的相同。如果相同,输出后序遍历即可。证明根据这个序列确定的二叉搜索树是唯一的 #include <iostream> #include <string.h> #include <cstdio> 阅读全文

posted @ 2019-03-02 17:07 FTA_Macro 阅读(241) 评论(0) 推荐(0) 编辑

导航