摘要: BZOJ2038 题意:q(5000)次询问,问在区间中随意取两个值,这两个值恰好相同的概率是多少?分数表示; 感觉自己复述的题意极度抽象,还是原题意有趣(逃; 思路:设在L到R这个区间中,x这个值得个数为a个,y这个值的个数为b个,z这个值的个数为c个。 那么答案即为 (a*(a-1)/2+b*( 阅读全文
posted @ 2018-08-05 22:00 ckxkexing 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 学习:http://codeforces.com/blog/entry/44351 E. Lomsat gelral 题意: 给定一个以1为根节点的树,每个节点都有一个颜色,问每个节点的子树中,颜色最多的是哪几种颜色,输出这些颜色的值得和。 思路: 树上启发式合并的模板题,具体来说,先对树进行树链剖 阅读全文
posted @ 2018-08-05 15:08 ckxkexing 阅读(332) 评论(0) 推荐(0) 编辑
摘要: EDU #48 D 题意 给定一个矩阵,已知每一行和每一列上数字的异或和,问矩阵上的数字是多少,不存在则输出NO。 思路 构造题,可以考虑只填最后一行,和最后一列,其中(n,m)要特判一下。其他格子给0即可。 自己之前接触这类题目较少,感觉写这种题,自己的智商都提高了。 #include <iost 阅读全文
posted @ 2018-08-04 21:33 ckxkexing 阅读(377) 评论(1) 推荐(0) 编辑
摘要: 题意: 有n个寝室,每个寝室4个人,现在在搞搬寝室的活动,告诉你每个寝室之前的人员名单,和之后的人员名单,问最少需要几个人要搬寝室。 思路: 转化为最小费用最大流解决的二分图问题,对每个去年的宿舍,向每个今年的组合连一条边,权值为1,费用为需要搬的人数(4-相同的人数),源点到去年各点,今年各点到汇 阅读全文
posted @ 2018-08-03 19:05 ckxkexing 阅读(186) 评论(0) 推荐(0) 编辑
摘要: CF717C 题意: 有长度为n的数列,有m种颜色,问最少的花费,使得数列中为0的点刷上颜色,并可根据颜色把数列分为正好k段。 思路: dp,开一个$dp[n][m][k]$,表示前n个以m为结尾的k段最小花费,转移方程是:如果这个点非0,那么只能从n-1 转移到a[i]这一个颜色,如果是0,即没有 阅读全文
posted @ 2018-08-02 22:57 ckxkexing 阅读(94) 评论(0) 推荐(0) 编辑
摘要: POJ - 3164 题意: 一个有向图,存在从某个点为根的,可以到达所有点的一个最小生成树,则它就是最小树形图。 题目就是求这个最小的树形图。 参考资料:https://blog.csdn.net/txl199106/article/details/62045479 #include <iostr 阅读全文
posted @ 2018-07-31 09:12 ckxkexing 阅读(130) 评论(0) 推荐(0) 编辑
摘要: UVA - 10462 题意: 求次小生成树的模板题,这道题因为有重边的存在,所以用kruskal求比较好。 #include <iostream> #include <cstdio> #include <algorithm> #include <cstring> #include <string> 阅读全文
posted @ 2018-07-30 22:11 ckxkexing 阅读(114) 评论(0) 推荐(0) 编辑
摘要: hdu 6315 题意: 对于一个数列a,初始为0,每个a[ i ]对应一个b[i],只有在这个数字上加了b[i]次后,a[i]才会+1。 有q次操作,一种是个区间加1,一种是查询a的区间和。 思路: 线段树,一开始没用lazy,TLE了,然后开始想lazy的标记,这棵线段树的特点是,每个节点维护 阅读全文
posted @ 2018-07-26 21:23 ckxkexing 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 牛客练习赛22C 一共有 n个数,第 i 个数是 xi xi 可以取 [li , ri] 中任意的一个值。 设 ,求 S 种类数。 感觉二进制真是一个神奇的东西。 #include <iostream> #include <algorithm> #include <cstring> #include 阅读全文
posted @ 2018-07-23 21:59 ckxkexing 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 学习:https://blog.csdn.net/bill_yang_2016/article/details/54667902 HDU-3507 题意:有若干个单词,每个单词有一个费用,连续的单词组合成一块有花费:(∑Ci)^2+M,问如何分单词,使得这些花费和最小。 思路:dp,但是由于数据n 阅读全文
posted @ 2018-07-21 23:12 ckxkexing 阅读(156) 评论(0) 推荐(0) 编辑
摘要: C. Journey 题意: 在一个DAG(有向无环图)中,问从1 到 n 点,在时间限制K下,最多能游玩几个地点,把游玩的顺序顺便输出。 思路: 感觉dp,一维不够就加一维,我一开始有想到dp,但是只是一维的去推,推着感觉不正确。这次用dp[i][j],表示到j点已游玩i个地点的最少时间。 DAG 阅读全文
posted @ 2018-07-20 23:26 ckxkexing 阅读(160) 评论(0) 推荐(0) 编辑
摘要: Lakes in Berland 题意与解释:这道题就是求图中被围起来的点群,问最少去掉几个点,可以使得孤立的点群数目为K; 因为自己写的代码又长又had bugs。 我自己写的bfs,想着是先染色,后期在考虑这个颜色要不要留。 第一个bug点是next的点写不对,写了两个nx,应该是一个nx,ny 阅读全文
posted @ 2018-07-19 22:08 ckxkexing 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 4395: 大家 这个题目和lca类似,就是要计算两个点间所有点的最大权值点。 可以在更新祖先的时候更新最大值。 (记得多组输入 #include <iostream> #include <cstdio> #include <algorithm> #include <cstring> #includ 阅读全文
posted @ 2018-07-18 17:07 ckxkexing 阅读(161) 评论(0) 推荐(0) 编辑
摘要: HDU - 4081 题意: 秦始皇要修路,使得这些路的长度和尽量短。徐福有一个可以消掉路长度的技能,只能用一次。问: 假设A=用法术建的那条路的两端的城市的总人口数,B=除了徐福造的那条路以外的路的总长度,建造的路要使得A/B最大。输出A/B。 思路: 既然要总的路最小,就先求一遍最小生成树,消耗 阅读全文
posted @ 2018-07-17 23:32 ckxkexing 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 题意:有两只青蛙,在一个圆上顺时针跳,问最少的相遇时间。 这个是同余方程的思路。可列出方程:(m-n)* X% L = y-x(mod L) 简化为 a * x = b (mod L) (1)判断是否有解 ,b % gcd(a,L) == 0 ,有得解。 (2)求通解下的最小正整数解,就是通解对(L 阅读全文
posted @ 2018-07-14 15:36 ckxkexing 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 参考:http://www.cnblogs.com/widsom/p/9290269.html 传送门:http://codeforces.com/contest/1005/problem/E2 题意:求一段数列中,取其中中位数为m的子序列个数有几个; 思路:首先我们可以先求出——序列中大于等于 m 阅读全文
posted @ 2018-07-13 21:16 ckxkexing 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 传送门 题意: 这道题说的是在一颗有两种颜色的树上,每操作一个节点,可以改变这个节点颜色和相邻同色节点的颜色。问最少操作次数,使得树上颜色相同。 思路: 先缩点,把相同的颜色的相邻节点缩在一起。再求出树的最长直径S(边的个数),答案就是(S + 1)/ 2; 因为对于一条链,我们可以从中间向两边交换 阅读全文
posted @ 2018-07-11 16:29 ckxkexing 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 传送门 题意:上司和直接下属,不能同时去一个聚会,问可邀请到的人的快乐值最大是多少; 参考:https://www.luogu.org/blog/mak2333/solution-p1352 思路: 首先我们们分析一下这道题,对于每一个人,它所做的决定对上司和下属都有影响,我们可以只看一方,也就是上 阅读全文
posted @ 2018-06-17 19:43 ckxkexing 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 乘法通用模板: #include <iostream> #include <cstdio> #include <algorithm> #include <cstring> #include <string> #include <vector> #include <map> #include <set 阅读全文
posted @ 2018-06-16 17:12 ckxkexing 阅读(242) 评论(0) 推荐(0) 编辑
摘要: 传送门 题意: 在一个树上,问能否切两刀,使得三块的节点值的和相同。 思路: 由于这个总的节点和是不变的,每块的节点值和sum固定,dfs搜索,和等于sum/3,切。若不能分成三块(不能被3整除,-1)。 还要判断,切掉的不能是根节点(一条链的情况),还要虽然是3的倍数,但不能切成三个的情况。 ac 阅读全文
posted @ 2018-06-10 13:51 ckxkexing 阅读(181) 评论(0) 推荐(0) 编辑