06 2015 档案

摘要:题目:有一个数列A1,A2...An,修改数量最少的元素,使得这个数列严格递增。无论是修改前还是修改后,每个元素都必须是整数。思路: 修改数量最少的元素使得这个数列严格递增,等价于让数量最多的元素不变,然后修改其余的元素。也就是从序列里面选尽量多的数,使得其它数修改后能形成一个单调递增序列。这跟LI... 阅读全文
posted @ 2015-06-15 19:46 jklongint 阅读(785) 评论(0) 推荐(0)
摘要:思路:这题与csu1392题目类似,方法类似。枚举最高位,最低位和中间数字的长度,然后列等式,计算中间的数字,看长度是不是跟枚举的一致,需要注意的是中间数字可以有前导0,如果根据等式算出来的中间数字为K,枚举的长度为L,也就是说需要满足length(K)#include#include#includ... 阅读全文
posted @ 2015-06-15 19:31 jklongint 阅读(274) 评论(0) 推荐(0)
摘要:题意:如果一个格子的相邻四个格子中存在两个格子被标记,且这两个格子有公共点,那么这个格子也被标记。给定初始的标记状态,求最终有多少个格子被标记了思路: 依次对每个格子进行处理,看它能否”生成“新的被标记点。考虑当前点的四个相邻点,如果能被当前点生成,将它加入标记表,并入队,这样直到队列为空是的标记表... 阅读全文
posted @ 2015-06-15 19:22 jklongint 阅读(223) 评论(0) 推荐(0)
摘要:题意:给两个序列[a, a + n), [b, b + n),求所有数(ai + bj)的异或和,i,j∈[0,n)。思路:这个题思路比较巧妙,不难但是难想到。BC上的题解讲得非常清楚了,我就直接copy过来了吧我们考虑两个数A,B。为了描述方便,我们设[P]的值为:当表达式P的值为真时,[P]=1... 阅读全文
posted @ 2015-06-15 03:57 jklongint 阅读(436) 评论(0) 推荐(0)
摘要:题意:给一个序列[a, a + n),求Σlowbit(ai, aj),i,j∈[0,n)。思路:lowbit与位有关,于是按位统计即可,如果lowbit=2^k,则前k位相同,前缀相同,于是想到用字典树来统计。12345678910111213141516171819202122232425262... 阅读全文
posted @ 2015-06-15 03:44 jklongint 阅读(261) 评论(0) 推荐(0)
摘要:题意:给一棵树,求节点L,L+1,...R的最近公共祖先思路:先对树dfs一下,从根1出发,经过每条边时记录一下终点和到达这个点的时间截,令r[u]表示到达u这个节点的最早时间截,t[x]表示在时间截x时到达的节点编号,假设对于两个节点u,v,设r[u]#include#include#includ... 阅读全文
posted @ 2015-06-12 19:16 jklongint 阅读(638) 评论(0) 推荐(0)
摘要:毕竟拿了金牌,还是要码点字记录一下。。。(1)冠军是南外,高中生简直逆天,ORZ!(2)4题也能拿金,真令人感动!(3)湘大的机房没有我们的霸气!(4)有点想法的题都要去试一试,万一A了呢。(5)差点1A了一道200行的恶心线段树(虽然复制粘贴后忘记改变量名和函数名了),我想说的是,构思相当重要!(... 阅读全文
posted @ 2015-06-07 01:10 jklongint 阅读(240) 评论(0) 推荐(0)
摘要:题意:有n*m个单位的农田,给定每个单位农田地势高低,现在需要灌溉所有农田,如果把水引入相邻的农田里需要的管道长度为两者的高度差。求最少的管道长度花费。思路:比较明显的最小生成树问题,相邻两点之间连一条边,边权为高度之差,求图的最小生成树即可。由于高度范围只有100,故可以直接类似hash表存了,无... 阅读全文
posted @ 2015-06-06 01:47 jklongint 阅读(312) 评论(0) 推荐(0)
摘要:题意:在一个有字母和数字组成的矩形里面找最大的等腰对称直角三角形,直角边分别平行于矩形边,对称的意思是对称轴两边的字符相同。思路:首先考虑一种情况,三角形的直角边在右方和下方,对于其它情况可以通过旋转矩形来得到。这样令dp[i][j]表示直角点在(i,j)的最大三角形的直角边的长度,不难得到dp[i... 阅读全文
posted @ 2015-06-05 21:43 jklongint 阅读(358) 评论(0) 推荐(0)
摘要:思路:容易知道G(x)=6x,H(x)=6F(x)。此题的关键是求出F(x)的通项,要求F(x)的通项,先建立递推式:F(x)=1/6 * (F(x-1)+1) + 5/6 * (F(x-1)+1+F(x)-1)。红色部分的意思是:假设已经连续出现x-1个了,若再出现一个同样的,总共花费F(x-1)... 阅读全文
posted @ 2015-06-05 04:32 jklongint 阅读(306) 评论(0) 推荐(0)
摘要:题意:给一个图,问能否给每个点分配一个实数值,使得存在一个数实数T,所有点满足:|value(i)| |value(u)-value(v)| >= T。(注意等价符号)思路:由性质可得,两相邻点的分配的值的符号相反,于是先对原图做一个二分图判定,如果是非二分图,则无解。对二分图染色后,假设colo... 阅读全文
posted @ 2015-06-05 02:19 jklongint 阅读(284) 评论(0) 推荐(0)
摘要:题意:1-n围成1圈,从1出发,第i次走a[i]步,问走m次后出现在[L,R]的概率L dp[i+1][(j+a[i])%n] 和 dp[i+1][(j-a[i]+n*a[i])%n]。由于取模运算的大量存在,直接算会TLE,需要预处理取模的结果。时间复杂度O(nm)。代码1:12345678910... 阅读全文
posted @ 2015-06-04 01:04 jklongint 阅读(235) 评论(0) 推荐(0)
摘要:题意:把一些数加到集合里面,每个数有两个属性,分别是编号和值,加进去之前询问集合里面距离自己“最近”的数的编号。最近的意思是值的差的绝对值最小,如果有相等的,则取值小的。并且已知所有数的id和value都是唯一的。思路:把处理过程反过来,就变成了一次把一个点删除,删除可以用数组标记,而询问则转化为找... 阅读全文
posted @ 2015-06-04 00:34 jklongint 阅读(267) 评论(0) 推荐(0)
摘要:题意:,求这个函数在[0,100]上的图像的长度。思路:采用离散化的思想,求出所有交点 ,把交点排序,把[0,100]分成若干个小区间,这样原函数在每个小区间上的图像属于某一个二次函数或者是一条直线。如何确定属于哪个呢?比如对于某个区间,令m为这个小区间的中点,求出所有的函数在m点的函数值的最小值,... 阅读全文
posted @ 2015-06-04 00:20 jklongint 阅读(562) 评论(0) 推荐(0)
摘要:题意:有一个无序数组,求有多少个长度为k的区间满足把区间内的数排序后是连续的。思路:长度为k的区间排序后是 连续的数等价于maxval-minval等于k-1并且不同的数有k个(或者说没有相同的数),第一个条件可以用rmq快速得到区间最大值与最小值之差,第二个条件可以这样求,按区间的左边界分类预处理... 阅读全文
posted @ 2015-06-03 01:53 jklongint 阅读(344) 评论(0) 推荐(0)
摘要:题意:3种操作分别为入队,出队,查询当前队列的中位数。操作数为1e5数量级。 思路:先考虑离线算法,可以离散+线段树,可以划分树,考虑在线算法,则有treap名次树,SBtree(size balanced tree)等等。 ///这个模板有问题,别再用了。。。!!!! 1 2 3 4 5 6 7 阅读全文
posted @ 2015-06-03 01:40 jklongint 阅读(388) 评论(0) 推荐(0)
摘要:题意:求满足gcd(x,y,z)=G,lcm(x,y,z)=L的x,y,z的解的个数。大致思路:首先如果L % G != 0那么无解,否则令u = L / G,问题变为,gcd(r,s,t)=1,lcm(r,s,t)=u的解的个数。然后将u分解质因数,令u=a1p1*...*akpk,考虑一种质因数... 阅读全文
posted @ 2015-06-03 01:25 jklongint 阅读(351) 评论(0) 推荐(0)