![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
CCF备战之路
末尾带空格的bearBaby
这个作者很懒,什么都没留下…
展开
-
201712-4 行车路线(最短路 spfa)
题目链接 行车路线题目大意:给定路的长度,以及路的类型,分大路和小路,走大路的开销就是路的长度,走小路的开销是其长度(如果连续走小路,这里的长度是连续小路长度的和)的平方。求从起点1到n的最小开销解题思路: 这题的巧妙之处就在于把大小路分开存在两张图中,然后分别求最短路。如果某一个节点u,走大路和走小路的最少开销一样,那么走大路,因为走小路对之后继续走小路产生影响。为了方便计算,我...原创 2018-08-01 09:48:10 · 570 阅读 · 0 评论 -
201709-4 通信网络(dfs的灵活运用)
题目链接: 通信网络题目大意: 中文题,不解释!!!解题思路: 利用dfs从i节点出发,深度遍历与其相连节点,遍历过程中,经过的节点就和i建立一条边。最后看看该节点是否和其余的节点都建立了边的关系,是的话,答案+1其实这个我们可以想象成,水流,dfs过程中,把源头带进去dfs,每经过一个节点,就让他和源头建立边,这样我们就知道我们的水可以流去哪些地方了,很巧妙的做法!!!这又...原创 2018-09-11 09:15:15 · 943 阅读 · 0 评论 -
201604-4 ccf 游戏 (三维记录 + BFS)
题目链接: 游戏题目大意: 中文题啊!!!解题思路: 真的是让我学到了的一题!!! 一开始看到题,二话不说上了普通的无访问标记式的bfs,结果TLE了,只得了20分,想想确实会超时。 于是想了一些剪枝方法,还是不行。因为突然发现好像还可能需要走回去,才会有最优解。于是冥思苦想,无果。决定上网看看各路神仙写法!!! 找到一个觉得想法特别清奇的,就是用思维数组标记访问,比普通vis...原创 2018-09-06 10:50:10 · 274 阅读 · 0 评论 -
201512-4 ccf 送货 (欧拉路径+神奇的最小字典序)
题目链接: 送货题目大意: 中文题,不解释 不过感觉这题ccf上的测试有问题,好多代码都是80分,然后RE了!! 出题越来越有水平了啊!!弱鸡瑟瑟发抖解题思路: 当然要先判断图是否存在欧拉路径了。 对于无向图,判断是否存在欧拉路径,首先肯定图要是连通图,其次每个点的数必须为偶数或者恰好有两个点的度数为奇数(就是起始点和终点)。然后如果题目没有要求最小字典序路径的话,直接用f...原创 2018-09-03 22:03:09 · 539 阅读 · 0 评论 -
201609-4 ccf 交通规划(dijstra(堆优化))
题目链接: 交通规划题目大意: 中文题,不解释!!!解题思路: 题目要求我们要满足到节点1的最短距离不变,还要使总的经过的路径长度最小。 那么在保证最短路径不变的情况下,如何保证经过路径长度最小呢?由案例可知道,只有当某个节点有多条路到节点1的最短路都一样长时,才会使答案会有不同。 那么要使经过的总路径最短,换一个想法,是不是就是使得重复走的路径最大呢?比如案例中5比4大,所...原创 2018-09-07 23:49:46 · 625 阅读 · 0 评论 -
201503-4 ccf 网络延时(dfs)
题目链接: 网络延时题目大意: 中文题目,不解释2333解题思路: 在树上找最远的两点距离,我们可以知道,其中一个点必定是离根结点最远的一点,即深度最大的(证明略,应该很容易理解吧2333),那么我们只需要从深度最大的某个点出发,dfs一遍,最远的那个距离就是答案。AC代码:#include <iostream>#include <cstdio>...原创 2018-08-30 12:40:19 · 240 阅读 · 0 评论 -
201509-4 ccf 高速公路 (强连通分量 tarjan算法)
题目链接: 高速公路题目大意: 中文题,不解释解题思路: 抽象出来,其实就是求强连通分量,求出每个强连通分量的点的个数后,点对的个数就是C(强连通分量点的个数,2)(C是组合数学的组合符号)。板子题,多希望每年都是板子题2333,祈祷18年AC代码:#include <iostream>#include <cstdio>#include <...原创 2018-09-01 11:00:13 · 259 阅读 · 0 评论 -
201509-3 ccf 模板生成系统(熟练运用string库函数)
题目链接: 模板生成系统题目大意: 中文题,不解释2333!!!解题思路: 暴力,一行一行找变量,然后去找输入是否有这个变量的值,有的话替代,没有的话,删除,就很暴力!!!有关字符串string的替换,删除以及取子串的操作,可以参考这篇博客:AC代码:#include &lt;iostream&gt;#include &lt;cstring&gt;#include...原创 2018-08-31 16:03:27 · 188 阅读 · 0 评论 -
201412-4 ccf 最优灌溉(最小生成树)
题目链接: 最优灌溉题目大意: 中文题目,不解释23333解题思路: 根据题目要求,所有麦田都要被灌溉,且使花费最小,抽象出来就是求无向带权图的MST(即最小生成树)。 由于点少边多,属于稠密图,选择prim()算法,复杂度为O(n^2),n为点数,另一个算法复杂度适合简单图,复杂度为O(e*log(2e)),e为边数。依次直接套prim算法板子就好了啊!! 不过我自己用优先...原创 2018-08-28 16:04:21 · 876 阅读 · 0 评论 -
201403-3 ccf --命令行选项(stringstream活用)
题目链接: 命令行选项题目大意: 中文题目,不解释!!! 记住仔细读题就好!!!解题思路: 一如既往的模拟题,这里需要灵活利用STL之Stringstream字符串流,然后就豁然开朗了!! 可以参考这个博客学习! C++之StringstreamAC代码:#include <iostream>#include <cstdio>#inclu...原创 2018-08-26 19:30:18 · 194 阅读 · 0 评论 -
201409-4 ccf--最优配餐
题目链接: 最优配餐题目大意: 中文题目,很清晰了,不解释解题思路: 这题根据题目大意即刻想到需要用bfs()客户离最近餐厅的距离,然后乘以数量就是答案! bfs的思路,是这样的,先把餐厅坐标入队列,并且步数为0,然后每次取出队首元素,进行上下左右四个方向扩展,对没有遍历过且不是障碍点加入队尾,这样当我们访问到客户点时,就是最短路径,记录下访问了几位客户,当全部客户点都访问完,返回...原创 2018-08-26 11:02:40 · 353 阅读 · 1 评论 -
CCF201312-4 -有趣的数(数位DP or 神奇思路)
题目链接: 有趣的数解题思路: 好吧,一点都没趣,看了题目拼命想着组合数学!!! 一晚上无果,,, 决定看一下各路神仙的做法,真是人才啊!服解题的关键是把可能存在的状态找出来! 可以这样分析:由题容易知道,肯定肯定以2开头,然后无0,肯定无1,。所以可以得出以下6中状态: dp[i][0] :前i为数中只有2 dp[i][1]:前i位数中只有0 2 dp[i][2]:前i位...原创 2018-08-11 00:19:28 · 535 阅读 · 1 评论 -
CCF201403-4:无线网络(建图+bfs)
题目链接: 无线网络题目大意: 中文题大概不用翻译吧!抽象出模型大概就是给你n个点(点分两种点,原来就有的点,可添加的点,对应题目),然后好多边(如果两个点之间的距离不超过r我们就建立一条边),要求找出点1经过最少几个点就可以到达点2。解题思路:一、建立模型读完题,感觉像是几何题,但是细想,当作几何来做的话,并不好下手。通过题目给定的条件,两点距离不超过r就可以建立连接,我们可...原创 2018-08-14 12:50:07 · 399 阅读 · 0 评论 -
201703-4 ccf 地铁修建 (dijstra的灵活运用)
题目链接: 地铁修建题目大意: 中文题,不解释啊啊!!!解题思路: 题目要求使得完工时间最短,因为可以同时开工,所以抽象出来就是。从1到n的多条路线中,选一条路径所经过的边中最大的边权最小(看样例就可以理解这句话了)。 于是我们可以利用求最短路的法子来求这个最大边权最小。之前求最短路是记录1到当前节点的最短路,那我是不是可以改变一下松弛条件,dist[i]记录的是1节点到当前节点i...原创 2018-09-11 09:41:09 · 936 阅读 · 0 评论