03 2016 档案
FZU 2124 吃豆人 bfs
摘要:题目链接:吃豆人 比赛的时候写的bfs,纠结要不要有vis数组设置已被访问,没有的话死循环,有的话就不一定是最优解了。【此时先到的不一定就是时间最短的。】于是换dfs,WA。 赛后写了个炒鸡聪明的dfs,TLE,才发现时间复杂度好像是4^(n*m)。T_T 依然感觉这个dfs很棒。 bfs已AC,怎
阅读全文
HDU 2102 A计划 bfs
摘要:题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=110868#problem/I bfs水题。二维的图,已知起始点,问规定时间内是否能到达。 手生了,出了很多bug. 1,模拟去队列head>=tail 表示队列不空. 2.che
阅读全文
HDU 1074 Doing Homework 状压DP
摘要:被水题卡了三个点,真是不开心... 题目链接:Doing Homework 思路:全排列枚举所有的状态,找出哪种状态时减少的人数最少,状态最多是2^15-1。不到40000,不会超时。然后为了节省空间,可以用状压DP,以一个16位的十进制数的第0位,第1位...第n-1为的0或1分别表示第1项,第2
阅读全文
动态规划的无后效性和最优子结构
摘要:一般来说,一个问题如果能用动态规划方法求解,必须满足无后效性原则和最优子结构。 【1】最优子结构:对于多阶段决策问题,如果每一个阶段的最优决策序列的子序列也是最优的,且决策序列具有“无后效性”,就可以将此决策方法理解为最优子结构。 【2】无后效性:动态规划法的最优解通常是由一系列最优决策组成的决策序
阅读全文
FZU 2110 Star
摘要:题目链接:Star ...计算几何水题,直接暴力判断任意三个点是不是能组成三角形就可以了。 判断是锐角三角形的条件是 a^2+b^2>c^2(c=max(a, b, c)). 坑点在,说好的integer,如果不是double 型,就WA了哦~~~
阅读全文
并查集
摘要:并查集有两个优化。 首先是初始化: 优化: 一、按秩合并 描述:就是在对两个不同子集连接时,按照rank来连,也就是rank低的连在rank高的下面。rank高的做父亲节点。 作用,这样类似维护了一棵树,树是rank高的在上。 二、路径压缩 描述:假如fa数组已经嵌套了N层,那么传统的做法去找祖先要
阅读全文
POJ 1797 kruskal 算法
摘要:题目链接:http://poj.org/problem?id=1797 开始题意理解错。不说题意了。 并不想做这个题,主要是想测试kruskal 模板和花式并查集的正确性。 已AC;
阅读全文
prim和kruskal比较
摘要:推荐:http://squirrelrao.iteye.com/blog/1044867 http://www.cnblogs.com/xwdreamer/archive/2011/06/16/2296997.html http://blog.csdn.net/believejava/article
阅读全文
HDU1102 最小生成树prim算法
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1102 题意:给出任意两个城市之间建一条路的时间,给出哪些城市之间已经建好,问最少还要多少时间使所有的城市连通? 思路:已经建好的城市之间需要的时间设为0,就是求最小生成树的权值和了。 顺便复习一下pri
阅读全文
二叉树已知 先序中序求后序 和 已知后序中序求先序
摘要:简单易忘~~~ 已知先序中序求后序: 已知中序后序求先序:
阅读全文
蓝桥杯练习系统历届试题 大臣的旅费 求树的直径
摘要:很久以前,T王国空前繁荣。为了更好地管理国家,王国修建了大量的快速路,用于连接首都和王国内的各大城市。 为节省经费,T国的大臣们经过思考,制定了一套优秀的修建方案,使得任何一个大城市都能从首都直接或者通过其他大城市间接到达。同时,如果不重复经过大城市,从首都到达每个大城市的方案都是唯一的。 J是T国
阅读全文
最短路之dijkstra算法
摘要:复习一下dijkstra的思路。 在整个寻找最短路的过程中,有这样的循环方式: 1.找到到当前源点距离最小的一个,可以确定源点到它的最短距离即为当前距离。 2.对该点所指向的所有点进行判断是否经过该点间接到达源点的距离比原来更短。 重复上述操作n-1次,便找到了源点到所有点的最短距离。
阅读全文
FZU 2168 防守阵地 I
摘要:题目链接:防守阵地 I 好不容易推出公式,义无反顾的用线段树区间求和,然后MLE。 get区间求和新技能。【技能好熟悉....】 然后。知道公式and get新技能的情况下,卡了快一个点,原因是,那个很讨厌的sum,如果I==1的话,就不能直接那样求了。特判一下。然后!每次求得新ans的基础都是上一
阅读全文
FZU 2169 shadow spfa
摘要:题目链接:shadow 好佩服自己耶~~~好厉害~~~ 麻麻再也不用担心我的spfa 和 邻接表技能了~~~ spfa 记录最短路径。
阅读全文
最短路之SPFA算法
摘要:部分来自:http://blog.csdn.net/juststeps/article/details/8772755 求最短路径的算法有许多种,除了排序外,恐怕是OI界中解决同一类问题算法最多的了。最熟悉的无疑是Dijkstra,接着是Bellman-Ford,它们都可以求出由一个源点向其他各点的
阅读全文
数据结构之邻接表
摘要:猛然间发现邻接表已经都忘得差不多了,赶紧来复习一发。 啊哈算法,恍然大悟。 转载自:http://www.ahalei.com/thread-4612-1-1.html
阅读全文
蓝桥杯练习系统算法提高 求最大值
摘要:问题描述 给n个有序整数对ai bi,你需要选择一些整数对 使得所有你选定的数的ai+bi的和最大。并且要求你选定的数对的ai之和非负,bi之和非负。 输入格式 输入的第一行为n,数对的个数 以下n行每行两个整数 ai bi 输出格式 输出你选定的数对的ai+bi之和 样例输入 5-403 -625
阅读全文
蓝桥杯练习系统历届试题 买不到的数目
摘要:问题描述 小明开了一家糖果店。他别出心裁:把水果糖包成4颗一包和7颗一包的两种。糖果不能拆包卖。 小朋友来买糖的时候,他就用这两种包装来组合。当然有些糖果数目是无法组合出来的,比如要买 10 颗糖。 你可以用计算机测试一下,在这种包装情况下,最大不能买到的数量是17。大于17的任何数字都可以用4和7
阅读全文
蓝桥杯练习系统历届试题 连号区间数
摘要:问题描述 小明这些天一直在思考这样一个奇怪而有趣的问题: 在1~N的某个全排列中有多少个连号区间呢?这里所说的连号区间的定义是: 如果区间[L, R] 里的所有元素(即此排列的第L个到第R个元素)递增排序后能得到一个长度为R-L+1的“连续”数列,则称这个区间连号区间。 当N很小的时候,小明可以很快
阅读全文
蓝桥杯练习系统历届试题 翻硬币
摘要:问题描述 小明正在玩一个“翻硬币”的游戏。 桌上放着排成一排的若干硬币。我们用 * 表示正面,用 o 表示反面(是小写字母,不是零)。 比如,可能情形是:**oo***oooo 如果同时翻转左边的两个硬币,则变为:oooo***oooo 现在小明的问题是:如果已知了初始状态和要达到的目标状态,每次只
阅读全文
蓝桥杯练习系统历届试题 错误票据
摘要:问题描述 某涉密单位下发了某种票据,并要在年终全部收回。 每张票据有唯一的ID号。全年所有票据的ID号是连续的,但ID的开始数码是随机选定的。 因为工作人员疏忽,在录入ID号的时候发生了一处错误,造成了某个ID断号,另外一个ID重号。 你的任务是通过编程,找出断号的ID和重号的ID。 假设断号不可能
阅读全文
蓝桥杯练习系统历届试题 剪格子 dfs
摘要:问题描述 如下图所示,3 x 3 的格子中填写了一些整数。 +--*--+--+|10* 1|52|+--****--+|20|30* 1|*******--+| 1| 2| 3|+--+--+--+ 我们沿着图中的星号线剪开,得到两个部分,每个部分的数字和都是60。 本题的要求就是请你编程判定:对
阅读全文
蓝桥杯练习系统历届试题 带分数 dfs
摘要:问题描述 100 可以表示为带分数的形式:100 = 3 + 69258 / 714。 还可以表示为:100 = 82 + 3546 / 197。 注意特征:带分数中,数字1~9分别出现且只出现一次(不包含0)。 类似这样的带分数,100 有 11 种表示法。 输入格式 从标准输入读入一个正整数N
阅读全文
15年蓝桥杯第9题 矩阵快速幂
摘要:题意and数据范围: 赌圣atm晚年迷恋上了垒骰子,就是把骰子一个垒在另一个上边,不能歪歪扭扭,要垒成方柱体。 经过长期观察,atm 发现了稳定骰子的奥秘:有些数字的面贴着会互相排斥! 我们先来规范一下骰子:1 的对面是 4,2 的对面是 5,3 的对面是 6。 假设有 m 组互斥现象,每组中的那两
阅读全文
15年蓝桥杯第7题
摘要:题意:小明被劫持到X赌城,被迫与其他3人玩牌。 一副扑克牌(去掉大小王牌,共52张),均匀发给4个人,每个人13张。这时,小明脑子里突然冒出一个问题: 如果不考虑花色,只考虑点数,也不考虑自己得到的牌的先后顺序,自己手里能拿到的初始牌型组合一共有多少种呢? 请填写该整数,不要填写任何多余的内容或说明
阅读全文
15年蓝桥杯第6题
摘要:题意: 加法变乘法 我们都知道:1+2+3+ ... + 49 = 1225、现在要求你把其中两个不相邻的加号变成乘号,使得结果为2015。比如: 1+2+3+...+10*11+12+...+27*28+29+...+49 = 2015就是符合要求的答案。 请你寻找另外一个可能的答案,并把位置靠前
阅读全文
15年蓝桥杯第5题
摘要:题意: 1,2,3...9 这九个数字组成一个分数,其值恰好为1/3,如何组法? 思路:和15年第3题几乎是一样的dfs。依然不是自己想出来的。太佩服这个机智的深搜了。 如果题意是把用完九个数的话。 附right代码: 1 /* 2 1,2,3...9 这九个数字组成一个分数,其值恰好为1/3,如何
阅读全文
15年蓝桥杯第4题
摘要:题意: StringInGrid函数会在一个指定大小的格子中打印指定的字符串。要求字符串在水平、垂直两个方向上都居中。如果字符串太长,就截断。如果不能恰好居中,可以稍稍偏左或者偏上一点。下面的程序实现这个逻辑,请填写划线部分缺少的代码。思路:被各种输出空搞晕了,不过看的题解上的原题,一拿该是有些出入
阅读全文
浙公网安备 33010602011771号