会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
dwtfukgv
博客园
首页
新随笔
联系
管理
订阅
上一页
1
···
21
22
23
24
25
26
27
28
29
···
58
下一页
2017年4月8日
POJ 3764 The xor-longest Path (字典树)
摘要: 题意:给出一颗n个节点的边权树,求一条路径(u,v),使得路径上的边的权值异或值最大。 析:先从0开始遍历树,记录所有的点到0的路径的边权异或值,然后任意两点的路径的异或值就是dp[u]^dp[v], 然后再构造一棵二进制树,每次查询,注意长度要相同,最后求最大值即可。 代码如下:
阅读全文
posted @ 2017-04-08 17:50 dwtfukgv
阅读(128)
评论(0)
推荐(0)
2017年4月7日
Gym - 100801H Hash Code Hacker (构造)
摘要: 题意:求 n 个哈希值相同的串。 析:直接构造,通过取模来查找相同的串。 代码如下:
阅读全文
posted @ 2017-04-07 22:30 dwtfukgv
阅读(215)
评论(0)
推荐(0)
2017年4月6日
HDU 5546 Ancient Go (搜索)
摘要: 题意: Alice和Bob正在下古代围棋,规则如下: 棋盘有8×8个格子,棋子下在棋盘的交叉点上,故可以有9×9个落子的位置 Alice执黑棋Bob执白棋轮流落子 与棋子直线相连的空白交叉点叫做气。当这些气都被对方棋子占据后,该棋子就没有了“气”,要被从棋盘上提掉。如果棋子的相邻(仅上下左右)直线交
阅读全文
posted @ 2017-04-06 13:31 dwtfukgv
阅读(166)
评论(0)
推荐(0)
HDU 5547 Sudoku (暴力)
摘要: 题意:数独。 析:由于只是4*4,完全可以暴力,要注意一下一些条件,比如2*2的小方格也得是1234 代码如下:
阅读全文
posted @ 2017-04-06 12:40 dwtfukgv
阅读(198)
评论(0)
推荐(0)
HDU 5542 The Battle of Chibi (离散化+树状数组优化DP)
摘要: 题意:求n个数中长度为m的上升子序列的个数。 析:很容易想到一个n的三次方的DP,dp[i][j]表示第 i 个数长度为 j 的LIS 有多少个,但是会TLE,因此必须优化,dp[i][j] = sum{dp[k][j-1] | a[i] > a[k]} 我们可以用树状数组优化,当然用线段树也OK,
阅读全文
posted @ 2017-04-06 11:28 dwtfukgv
阅读(271)
评论(0)
推荐(0)
2017年4月3日
UVaLive 7637 Balanced String (构造)
摘要: 题意:给定一个括号的序列,原先的序列是碰到左括号加1,碰到右括号减1,然后把序列打乱,让你找出字典序最小的一个答案。 析:直接从第一个括号判断就好了,优先判断左括号,如果不行就加右括号。 代码如下:
阅读全文
posted @ 2017-04-03 23:08 dwtfukgv
阅读(495)
评论(0)
推荐(0)
2017年3月31日
ZOJ 3512 Financial Fraud (左偏树)
摘要: 题意:给定一个序列,求另一个不递减序列,使得Abs(bi - ai) 和最小。 析:首先是在每个相同的区间中,中位数是最优的,然后由于要合并,和维护中位数,所以我们选用左偏树来维护,当然也可以用划分树来做。 代码如下:
阅读全文
posted @ 2017-03-31 23:22 dwtfukgv
阅读(419)
评论(0)
推荐(0)
矩形面积并
摘要: #include #include #include using namespace std; const int maxn = 100 + 5; /// 可能 是double struct node{ int x1, y1; int x2, y2; }; node a[maxn]; int x[maxn= a[h].x2) break; fo...
阅读全文
posted @ 2017-03-31 19:34 dwtfukgv
阅读(115)
评论(0)
推荐(0)
HDU 1512 Monkey King (左偏树+并查集)
摘要: 题意:在一个森林里住着N(N<=10000)只猴子。在一开始,他们是互不认识的。但是随着时间的推移,猴子们少不了争斗,但那只会发生在互不认识 (认识具有传递性)的两只猴子之间。争斗时,两只猴子都会请出他认识的猴子里最强壮的一只(有可能是他自己)进行争斗。争斗后,这两只猴子就互相认识。 每个猴子有一个
阅读全文
posted @ 2017-03-31 18:52 dwtfukgv
阅读(220)
评论(0)
推荐(0)
左偏树
摘要: struct node { typec key; int l, r, f, dist; } tr[N]; <!--[if !supportLists]-->1. <!--[endif]-->// 获得结点i的根 <!--[if !supportLists]-->2. <!--[endif]-->in
阅读全文
posted @ 2017-03-31 18:22 dwtfukgv
阅读(119)
评论(0)
推荐(0)
2017年3月29日
POJ 2311 Cutting Game (博弈)
摘要: 题意:给定一个长方形纸张,每次只能水平或者垂直切,如果切到1*1的方格就胜,问先手胜还是负。 析:根据Nim游戏可知,我们可以分别求出每个子游戏的和,就是答案,所以我们就枚举每一种切法,然后求出SG函数,那么就能得到答案。 代码如下:
阅读全文
posted @ 2017-03-29 16:52 dwtfukgv
阅读(166)
评论(0)
推荐(0)
POJ 2348 Euclid's Game (博弈)
摘要: 题意:给定两个整数,两个人轮流操作,每次可以用较大数减去较小数的整数倍,当一个数变成0时,则结束,问谁会胜。 析:很明显如果 a == b 那么就可以直接结束了,那么如果 a > b我们可以交换两个数,保证 a < b。可以分成两类, (1) b - a < a (2) b - a > a 对于第一
阅读全文
posted @ 2017-03-29 16:34 dwtfukgv
阅读(176)
评论(0)
推荐(0)
2017年3月27日
Gym 101142C CodeCoder vs TopForces (搜索)
摘要: 题意:每个人有2种排名,对于A只要有一种排名高于B,那么A就能赢B,再如果B能赢C,那么A也能赢C,要求输出每个人分别能赢多少个人 析:首先把题意先读对了,然后我们可以建立一个图,先按第一种排名排序,然后从高的向向低的连一条边,然后再按第二种排序,同理连线。 最后dfs一次,要先从排名低的开始遍历,
阅读全文
posted @ 2017-03-27 20:34 dwtfukgv
阅读(170)
评论(0)
推荐(0)
2017年3月26日
Gym - 101142J Java2016 (构造)
摘要: 题意:给定一个数字,让你构造成一些表达式,最后结果是该数字的概率要大于50%。 析:我们可以把一个数分解是2的多少次幂,然后加起来就好。 代码如下:
阅读全文
posted @ 2017-03-26 21:46 dwtfukgv
阅读(164)
评论(0)
推荐(0)
2017年3月24日
L2-013. 红色警报 (并查集)
摘要: 战争中保持各个城市间的连通性非常重要。本题要求你编写一个报警程序,当失去一个城市导致国家被分裂为多个无法连通的区域时,就发出红色警报。注意:若该国本来就不完全连通,是分裂的k个区域,而失去一个城市并不改变其他城市之间的连通性,则不要发出警报。 输入格式: 输入在第一行给出两个整数N(0 < N <=
阅读全文
posted @ 2017-03-24 22:02 dwtfukgv
阅读(203)
评论(0)
推荐(0)
2017年3月23日
POJ 1127 Jack Straws (线段相交)
摘要: 题意:给定一堆线段,然后有询问,问这两个线段是不是相交,并且如果间接相交也可以。 析:可以用并查集和线段相交来做,也可以用Floyd来做,相交就是一个模板题。 代码如下:
阅读全文
posted @ 2017-03-23 17:54 dwtfukgv
阅读(185)
评论(0)
推荐(0)
L2-014. 列车调度 (DP)
摘要: 火车站的列车调度铁轨的结构如下图所示。 Figure 两端分别是一条入口(Entrance)轨道和一条出口(Exit)轨道,它们之间有N条平行的轨道。每趟列车从入口可以选择任意一条轨道进入,最后从出口离开。在图中有9趟列车,在入口处按照{8,4,2,5,3,9,1,6,7}的顺序排队等待进入。如果要
阅读全文
posted @ 2017-03-23 16:39 dwtfukgv
阅读(379)
评论(0)
推荐(0)
POJ 2484 A Funny Game (博弈)
摘要: 题意:Alice 和 Bob 在玩一个无聊的游戏,n个棋子围成一圈,两人轮流从中取走一或两个棋子,不过取两个时必须是连续的棋子。 棋子取走之后留下空位,相隔空位的棋子不连续。Alice先取,取走最后一个棋子的人赢。如果都采取最优策略,谁会赢? 析:如果是小于两个,很明显是Alice胜,如果是3个是B
阅读全文
posted @ 2017-03-23 16:33 dwtfukgv
阅读(166)
评论(0)
推荐(0)
2017年3月22日
UVa 10564 Paths through the Hourglass (DP)
摘要: 题意:从最上面走到最下面,使得路过的数求和为s,并输出编号最小的一组路径。 析:基本动规,dp[i][j][s] 从最下面到 i,j 和为s,路径数,要么从左面要么从右,求和就好了,注意上面和下面的不太一样,要分别求解。 代码如下:
阅读全文
posted @ 2017-03-22 21:02 dwtfukgv
阅读(108)
评论(0)
推荐(0)
UVaLive 3530 Martian Mining (简单DP)
摘要: 题意:给定一个n*m的网格,每个格子里有A矿和B矿数量,A必须由右向左运,B只能从下向上运,中间不能间断,问最大总数量。 析:一个简单DP,dp[i][j] 表示 从 (0, 0) 到 (i, j) 最大人运输量。要么向左运输,要么向上运输,取最大值。 代码如下:
阅读全文
posted @ 2017-03-22 20:56 dwtfukgv
阅读(126)
评论(0)
推荐(0)
上一页
1
···
21
22
23
24
25
26
27
28
29
···
58
下一页