随笔分类 -  AOAPCⅡ

摘要:这道题运用的知识点是求最短路的算法。一种方法是利用BFS来求最短路。 需要注意的是,我们要用一个三维数组来表示此状态是否访问过,而不是三维数组。因为相同的坐标可以通过不同的穿墙方式到达。 再一个方法可以用DFS求解。普通的DFS一定会超时。 我们把原来的DFS进行一些修改:只有当前节点没有访问或者需 阅读全文
posted @ 2017-02-26 00:17 deepwzh 阅读(219) 评论(0) 推荐(0) 编辑
摘要:关于最长公共子序列(LCS)的相关知识,http://blog.csdn.net/liufeng_king/article/details/8500084 这篇文章讲的比较好,在此暂时不再详说。 以下是我代码实现两种方式:递归+递推: 阅读全文
posted @ 2017-02-13 22:23 deepwzh 阅读(312) 评论(0) 推荐(0) 编辑
摘要:转载自 http://blog.csdn.net/synapse7/article/details/12873437 这道题我自己做的时候没有想到好的优化方法,提交的时候借鉴这篇文章的内容,转载如下: 11526 - H(n) Time limit: 5.000 seconds http://uva 阅读全文
posted @ 2017-02-13 22:15 deepwzh 阅读(376) 评论(0) 推荐(0) 编辑
摘要:题意:寻找特定区间内满足本身不是素数,但只有一个素因子的数。 这道题我一开始做了个超时(交的时候又忘记了测试大数。。。)。我原先是打算正向计算,对于每一个数判断他是否是素数,是否是只有一个素因子。这种思路能做,只是算法时间复杂度不符合题目要求。原题数组组数有几百,最大的数有10^12... 通过这个 阅读全文
posted @ 2017-02-12 22:22 deepwzh 阅读(298) 评论(0) 推荐(0) 编辑
摘要:题意:求区间内正约数最大的数。 原理:唯一分解定义(又称算术基本定理),定义如下: 任何一个大于1的自然数 ,都可以唯一分解成有限个质数的乘积 ,这里 均为质数,其诸指数 是正整数。这样的分解称为 的标准分解式。(取自百度百科) 根据原理,正约数数量 = (1+a1)(1+a2)..(1+an) 因 阅读全文
posted @ 2017-02-12 18:41 deepwzh 阅读(384) 评论(0) 推荐(0) 编辑
摘要:这道题大体意思是利用一种递归规则生成不同的气球,问在某两行之间有多少个红气球。 我拿到这个题,一开始想的是递归求解,但在如何递归求解的思路上我的方法是错误的。在研读了例题上给出的提示后豁然开朗(顺便吐槽一下算法竞赛第二版在这这道题目上(P246)提示写的有问题,g(k,i)=2g(k-1,i-2^( 阅读全文
posted @ 2017-02-11 07:46 deepwzh 阅读(505) 评论(0) 推荐(0) 编辑
摘要:这道题目并不是很难理解,题目大意就是求从第一列到最后一列的一个字典序最小的最短路,要求不仅输出最短路长度,还要输出字典序最小的路径。 这道题可以利用动态规划求解。状态定义为: cost[i][j] = max{cost[i+1][j+k]+c[i][j]}(k=-1,0,1) 关于最短路长度的求法, 阅读全文
posted @ 2017-02-10 16:59 deepwzh 阅读(513) 评论(1) 推荐(0) 编辑
摘要:题目大意是根据所给的有无限多个的n种立方体,求其所堆砌成的塔最大高度。 方法1,建图求解,可以把问题转化成求DAG上的最长路问题 方法2,转化成最长递增子序列问题求解 方法二要注意一点,我sort序列的时候用了一个cmp函数,他是根据立方体的底面积对立方体进行排序的。为什么不采用和方法一一样的排序方 阅读全文
posted @ 2017-02-09 13:07 deepwzh 阅读(953) 评论(0) 推荐(0) 编辑
摘要:这道题题目大意就是计算带有单元格引用的各单元格的值。 这道题本身不难,有以下几个关键点: 1.如何判断一个单元格循环引用 2.注意对字符串的细致处理 我出现的错误出现在以上两个方面,思路本身是不难的。 第一条,我的错误在于第66行起初并没有加上。如果不加那一行,就代表了你同层之间不能是相同的单元格, 阅读全文
posted @ 2017-02-04 12:39 deepwzh 阅读(426) 评论(0) 推荐(0) 编辑
摘要:这道题是学校寒假div1上的题目。这道题当时并没有做出来,并且之后卡了很久,因此特意在这里总结一下问题。 算法一: 这个算法是我参考书上的归并算法写的。 首先我想着重说的是第十二行程序执行顺序的问题。 我原先的理解是先运行逗号左边的内容,再运行逗号右边的内容,后来发现这是不正确的。 经过测试程序先递 阅读全文
posted @ 2017-01-31 21:45 deepwzh 阅读(229) 评论(0) 推荐(0) 编辑
摘要:题目大意是根据输入的dfs,bfs重建一棵树并输出他的节点。 这道题一开始做的时候没什么思路,原先是想的根据dfs,bfs递归求解,但没有想出来。 后来参考网上的思路,找到了这道题解决的关键所在:dfs和bfs得到的序列中有一个共同特点,每一个节点的相邻节点可能是兄弟节点,可能是孩子节点,也可能都不 阅读全文
posted @ 2017-01-31 16:05 deepwzh 阅读(846) 评论(1) 推荐(0) 编辑
摘要:单向链表: 循环链表: 循环链表: 阅读全文
posted @ 2017-01-25 13:11 deepwzh 阅读(210) 评论(0) 推荐(0) 编辑
摘要:这道题目是一道关于IP地址的题目,要深入理解这道题需要有一定的网络基础。 这道题目我第一次做的时候虽然也AC了,但代码写的比较复杂,不够精炼。近期刚刚参加了网络方面的培训,在有一定知识的基础上,又重写了这道题目。将很多步骤通过位运算(如移位,异或)进行了简化,在此贴一下前后两次的代码。 第二次代码: 阅读全文
posted @ 2017-01-19 07:25 deepwzh 阅读(370) 评论(0) 推荐(0) 编辑
摘要:这道题代码很容易写出来,难点在于很容易超时(特别是起点端图特别稠密的情况下,终点与起点没有连接),解决方法是先从终点找连接点。 阅读全文
posted @ 2016-12-21 16:52 deepwzh 阅读(302) 评论(0) 推荐(0) 编辑
摘要:解决百钱买鸡问题原本并不困难,关键的是这道题对其进行了升级,测试数据太大,传统的解法,像三重循环,二重循环都会导致超时。 这道题正确的解法应该是结合数学方程进行化简,将其转化为1层循环: x+y+z=n ax+by+c/d*z=m 由上述两个方程联立可用其他量表示出y来。从而只需要枚举x就能解决该题 阅读全文
posted @ 2016-11-05 08:57 deepwzh 阅读(262) 评论(1) 推荐(0) 编辑
摘要:这道题思路并不难想,在做题过程中主要遇到的困难有: 因为没有仔细的考虑边界情况,没有分析全面,导致因=没有取到而得不出正确结果,浪费的大量时间。 今后在做这类题目时,一定要先进行一个比较全面的分析+模拟,再动手写代码,避免浪费时间。 阅读全文
posted @ 2016-11-05 08:38 deepwzh 阅读(459) 评论(0) 推荐(0) 编辑
摘要:这道题难度不大,主要是考察熟练运用C++的容器,字符串等操作。 另外注意特殊情况是否需要特殊处理。即当一个字典为空时,无论另一个字典是否有值,输出的结果都为No Change,这点需要注意一下。 另外,仔细阅读题目的输入输出部分,避免定势思维而误解题意,比如这题我还以为不用输出最后一个数据的空行,其 阅读全文
posted @ 2016-11-05 08:33 deepwzh 阅读(227) 评论(0) 推荐(0) 编辑
摘要:这道题我的思路是先通过递归构建树,然后进行遍历将位置和保存在map映射中,最后按顺序输出map集合中的值。 至于如何遍历,我是依次尝试了宽度优先遍历和深度优先遍历,当然这都是可以的。不过期间写错了很多次。在此总结以下在这道题目中犯得错误(逻辑错误): 。。。。 以下附上我的AC代码: 阅读全文
posted @ 2016-08-11 07:34 deepwzh 阅读(181) 评论(0) 推荐(0) 编辑
摘要:这道题我一直尝试用scanf来进行输入,不过一直没有成功,因此先搁置一下,以后积累些知识再进行尝试。 这道题有两种解决方案: 即先建树,再遍历和边建树边遍历。这两种方案经过实践证实效率相差不太多。应该主要耗时的是cin stringstream 之类的输入函数。 另外,通过这道题领悟了一个非常重要的事情: 一定要清空上组数据使用过的数组,否则后果很严重!!!!!! 除非你确定数组清不清无所谓。... 阅读全文
posted @ 2016-08-10 12:10 deepwzh 阅读(200) 评论(0) 推荐(0) 编辑
摘要:本题考查点有以下几个: 对数据输入的熟练掌握 二叉树的建立 二叉树的宽度优先遍历 首先,特别提一下第一点,整个题目有相当一部分耗时在了第一个考查点上(虽然有些不必要,因为本应该有更简单的方法)。这道题的输入有以下几种方案: 一次性输入并直接得到要得到的数据 输入后进行加工处理 对于第一种方案,我采用的是与正则相结合的方案 scanf("(%d%[,A-Z]) ",&d,s)) 得到... 阅读全文
posted @ 2016-08-08 21:36 deepwzh 阅读(205) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示