摘要: bzoj2463 谁能赢呢? 题目大意:给定一个n×n的方格,从(1,1)开始走,每次可以到上下左右没有到过的一个格子,alice先手,交替操作,如果先手必胜则输出'Alice’,否则输出‘Bob’。 思路:lcomyn大爷秒暴结论。后来仔细想了想,只发现走一步肯定会改变格子奇偶性。其实如果n是偶数 阅读全文
posted @ 2015-08-28 08:17 Rivendell 阅读(396) 评论(0) 推荐(0) 编辑
摘要: bzoj1040 骑士 题目大意:给出每个骑士的攻击力和痛恨的人,每个骑士不能和自己痛恨的人一起出现,选一些骑士使得他们的攻击力最大。 思路:因为每个骑士恨一个人,所以是一个环套树森林(注意n点n边的联通图可能是环套树森林!!!),虽然题目是单向边,但等同于双向边。对于环套树dp的做法,可以搜到环后 阅读全文
posted @ 2015-08-26 16:51 Rivendell 阅读(730) 评论(0) 推荐(0) 编辑
摘要: (一)弦图:当且仅当存在完美消除序列。 bzoj1006 神奇的国度 题目大意:给定一张弦图,求它的最小染色数。 思路:之所以看出是弦图,因为题目中说只有三元环,而没有更多的。求最小染色数就是求出完美消除序列后,从后往前尽量染能染的最小的颜色。其他分析的复杂度是O(n+m)的,但是自己写出程序没有优 阅读全文
posted @ 2015-08-26 10:05 Rivendell 阅读(502) 评论(0) 推荐(0) 编辑
摘要: (一)半平面交:化出一些一元二次不等式,然后就可以求一些半平面交来找合法解了。 bzoj1007 水平可见直线 题目大意:给定一些直线,求从无限高处可以看到那些直线。 思路:对于每一条直线都是一个半平面,然后加上无穷远的半平面之后求半平面交,用到的就是。这里无穷远的半平面可以赋成1e100防止错误。 阅读全文
posted @ 2015-08-25 19:12 Rivendell 阅读(462) 评论(0) 推荐(0) 编辑
摘要: CODEVS1064虫食算 题目描述 Description 所谓虫食算,就是原先的算式中有一部分被虫子啃掉了,需要我们根据剩下的数字来判定被啃掉的字母。来看一个简单的例子: 43#9865#045 + 8468#6633 44445506978 其中#号代表被虫子啃掉的数字。根据算式,我们很容易判 阅读全文
posted @ 2015-08-20 20:26 Rivendell 阅读(472) 评论(0) 推荐(0) 编辑
摘要: bzoj2049 洞穴探测 题目大意:lct(link,cut,判联通)。 #include<iostream> #include<cstring> #include<cstdio> #include<algorithm> #define maxnode 10005 using namespace 阅读全文
posted @ 2015-08-18 13:07 Rivendell 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 可持久化线段树就类似于主席树,所以先不放题了。bzoj3673||3674 可持久化并查集思路:用可持久化线段树来维护每个点的fa信息,然后按秩合并(相当于点的高度)查找的时候顺着父亲暴力查找。这里我们可以找到爸爸儿子那一级就可以了,可以省一些时间。#include#include#include#... 阅读全文
posted @ 2015-08-17 15:15 Rivendell 阅读(295) 评论(0) 推荐(0) 编辑
摘要: bzoj3105 新Nim游戏 题目大意:给定n堆火柴,第一二次取的时候可以取走任意堆,然后和普通的游戏一样,问怎样取能先手必胜,最小化第一次取的火柴数。 思路:第一次取走后,剩下的火柴中不存在一个子集异或和为0(用线性基判断这件事),贪心能取就取,总和减去剩下的就可以了。实现的时候我们是用别的数来 阅读全文
posted @ 2015-08-16 17:57 Rivendell 阅读(608) 评论(0) 推荐(0) 编辑
摘要: bzoj2337 XOR和路径 题目大意:无向图中,每个点等概率的选择周围的点走过去,求1~n路径权值(走过边的异或和)的期望。 思路:对边权的二进制每一位单独考虑,因为异或后互不影响。设f[i]表示i~n的路径权值为1的概率,对于每一个点列出方程(注意边权为0/1),高斯消元求出答案。 #incl 阅读全文
posted @ 2015-08-16 17:20 Rivendell 阅读(666) 评论(0) 推荐(0) 编辑
摘要: 因为耽误了网络同步赛,所以在将近一个月后进行了NOI的测试。 DAY1 T1程序自动分析 题目大意:给定一些变量相等或不等的关系,判断是否矛盾。 思路:离散化后,并查集维护一下。水水的开始。 #include<iostream> #include<cstdio> #include<cstring> 阅读全文
posted @ 2015-08-14 17:07 Rivendell 阅读(322) 评论(0) 推荐(0) 编辑