题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=1483分析:先将不同的颜色的出现位置从小到大用几条链表串起来,然后统计一下答案对于每次修改,修改一下答案即可,修改之后需要将两个颜色的链表合并就行了,但感觉似乎会TLE?以下摘录与Hzwe...
分类:
其他好文 时间:
2014-11-30 00:24:46
阅读次数:
284
题目大意:给出一串颜色,有两种操作,1.询问有多少块颜色。2.将一种颜色改变成另一种颜色。
思路:好像和染色什么的比较像,但是看了题解之后发现完全不是那么回事。
对于每一种颜色维护一个链表,然后在修改颜色的时候,暴力修改一种颜色成为另一种颜色,用启发式合并可以保证复杂度不超过O(nlogn)。但是由于是启发式合并,有可能导致你就改了反了颜色,这个时候记录一个映射,然后把修改错的记录下来...
分类:
其他好文 时间:
2014-11-28 18:21:36
阅读次数:
180
题目大意:给出一些与x轴垂直的线段,问一个经过原点的抛物线最多能按顺序经过多少条线段。
思路:总体上来说是数学题,我们来推一推。
设这个经过原点的抛物线为y = a * x ^ 2 + b * x,设一条线段的起点和终点为(x0,y1)和(x0,y2),且y2 > y1。
将x0带入到设出的抛物线中,会得到y = a * x0 ^ 2 + b * x0,这时候需要满足的是y = y1...
分类:
其他好文 时间:
2014-11-26 11:30:22
阅读次数:
222
Description小春现在很清闲,面对书桌上的N张牌,他决定给每张染色,目 前小春只有3种颜色:红色,蓝色,绿色.他询问Sun有多少种染色方案,Sun很快就给出了答案.进一步,小春要求染出Sr张红色,Sb张蓝色,Sg张绝 色.他又询问有多少种方案,Sun想了一下,又给出了正确答案. 最后小春发....
分类:
其他好文 时间:
2014-11-26 01:23:57
阅读次数:
257
题目大意:给出n个点,要求把它们连成一棵树,有一些边可供选择,每一条遍都有一级公路和二级公路,问在一级公路不少于k的情况下最高花费的最低值是多少。
思路:二分答案,然后验证的时候先将边按照一级公路的权值从大到小排序,我们每一次验证应该尽可能的选择能选的一级公路,如果一级公路不能选,看二级公路能不能选,如果。最后看一级公路选择的数量和总的公路选择的数量。
CODE:
#...
分类:
其他好文 时间:
2014-11-23 14:33:50
阅读次数:
184
蒟蒻线性代数太烂了。。。这个逼题居然卡了半天才做出来,弱的不行啊。。。
矩阵快速幂,把n这个len位数拆成len次分段快速幂就可以了。
注意取模的数字m
代码:
#include
#include
#include
#include
#include
#define MAXN 4
using namespace std;
typedef long long int LL;
...
分类:
其他好文 时间:
2014-11-20 20:26:46
阅读次数:
251
题目大意:给出一些单词,和一些句子,当且仅当句子可以分割成的子串都可以被词典翻译,就说明这个子串是可以被翻译的。求最长的可以被翻译的前缀长度。
思路:利用Trie树来刷数组,能够刷到的最长的地方就是这个串最长可以翻译到的地方。
PS:在BZOJ上Trie居然比AC自动机快,我的渣代码都刷到第一篇了。。。
CODE:
#include
#include
#includ...
分类:
编程语言 时间:
2014-11-20 18:49:12
阅读次数:
286
题目大意:闯关答题,每一个题可以用两个trick中的一个来解决,一个trick最多只能使用一次,问最多可以连续答对多少题。
思路:我一开始就想到了二分图最大匹配,但是思路完全想歪了。我看每个题有两个trick可以用,就用这个来拆点建图,显然是错的。。
正确的是用每个题和每个trick来建边,来一个问题就建两条边,然后看能不能找到增广路,如果不能就无法答对这个题,输出。
COD...
分类:
其他好文 时间:
2014-11-06 14:53:51
阅读次数:
195
题目大意:给出平面上的一些点,求这些点中组成的矩形的最大面积。
思路:任意找四个点然后判断肯定是不行的,那么我们不妨来想一想矩形的性质。比如,对角线的交点是两条对角线的中点,对角线相等。这样的话只要找到一对线段,使得他们的中点相同,并且长度相同,那么这两个对角线一定能够组成一个矩形。只有就可以利用叉积求出面积了。
比较坑的一点是,这个题万万不能用double,因为有一个点专门卡doub...
分类:
其他好文 时间:
2014-10-20 17:23:30
阅读次数:
202
题目大意:给出一些笛卡尔系中的一些直线,问从(0,+∞)向下看时能看到哪些直线。
思路:半平面交可做,但是显然用不上。类似于求凸包的思想,维护一个栈。先将所有直线按照k值排序,然后挨个压进去,遇到有前一个交点被挡住的话就先弹栈。
比较闹心的是去重。我的方法是压栈之前先去重,然后在处理。
CODE:
#include
#include
#include
#inclu...
分类:
其他好文 时间:
2014-10-17 18:54:42
阅读次数:
153