- 博客(23)
- 收藏
- 关注
原创 【索引】BestCoder
BestCoder Round #88A. 5907 Find Q B. 5908 Abelian Period C. 5909 Tree Cutting D. 5910 Advanced Traffic System
2016-10-24 22:18:00 358
原创 【索引】Codeforces
Codeforces Round #378 (Div. 2)A. Grasshopper And the String B. Parade C. Epidemic in Monstropolis D. Kostya the Sculptor E. Sleep in Class F. Drivers DissatisfactionCodeforces Round #377 (Div.
2016-10-24 22:14:23 546
原创 【索引】2016年ICPC和CCPC赛题
2016中国大学生程序设计竞赛 - 网络选拔赛A. 5832 A water problem B. 5833 Zhu and 772002 C. 5834 Magic boy Bi Luo with his excited tree D. 5835 Danganronpa E. 5836 Rubik’s Cube F. 5837 Robots G. 5838 Mountain H. 5
2016-10-24 22:10:17 3194
原创 hdu5945Fxx and game
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5945题意:求数x最少经过多少次变换能变为1,(1)如果x%k==0,那么可以x=x/k。(2)x=x-i,(1分析:现在连B题都要单调队列优化dp了。。大意了。我们维护一个变换次数递增的单调队列,然后每次维护在t内然后用队头去更新当前点,如果i%k==0就特判一下就行了。代码:#inclu
2016-10-29 22:00:50 855
原创 hdu5944Fxx and string
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5944题意:给定一个字符串s,求有多少个三元组(i,j,k)满足i,j,k是等比数列且s[i]=='y'&&s[j]=='r'&&s[k]=='x'。分析:暴力枚举公比,然后枚举起点位置,注意逆序。代码:#include#include#include#include#include
2016-10-29 21:57:53 728
原创 hdu3394Railway
链接:http://acm.hdu.edu.cn/showproblem.php?pid=3394题意:给定一个n个点m条无向边的图。求有多少个桥以及有多少条边会在两个环中。分析:点双联通分量的题,桥就是割边,冲突边就是一个点联通分量中边>点就是啦。代码:#include#include#include#include#include#include#include#
2016-10-27 21:51:11 424
原创 hdu5909Tree Cutting
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5909题意:给定一棵无根树,统计所有子树的异或和的个数。分析:求出所有子树的异或和,题解的两种方法我都写了一下。第一种是FWT加速卷积O(n*m*logn)。第二种是树分治,因为是无根树,我们可以每次用树dp确定过重心的方案数,然后每次删掉重心就是树分治啦O(n*mlgon)。fwt代码:#
2016-10-26 21:38:45 800
原创 hdu5908Abelian Period
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5908题意:给定一个数组,求有多少个k使得数组能分成连续的k段使得每段中的每种数字的个数都是一样的。分析:很容易想到每种数都分成k段那么原数组一定是被均分成k段,那么我们只需要判断每段中的每个数字是否都是一样的就行了,写点判断的标记就好了。代码:#include#include#incl
2016-10-26 19:44:18 345
原创 hdu5907Find Q
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5907题意:求有多少个连续子串只含'q'字符。分析:求出所有以'q'为开头的子串即可。代码:#include#include#include#include#include#include#include#include#include#include#include
2016-10-25 20:49:21 586
原创 hdu5901Count primes
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5901题意:求n以内素数个数。分析:模板题,没搞懂原理,先弄一个O(n23)O(n^{ \frac{2}{3}})的模板吧。代码:const int N=5e6+10;const int M=7;const int PM=2*3*5*7*11*13*17;bool np[N];int pi[N],pr
2016-10-24 20:37:03 580
原创 hdu5716带可选字符的多字符串匹配
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5716题意:中文题。分析:之前补过一次百度之星的复赛,补到这题的时候没去找人问怎么做。后来做了一个XG出的多校hdu5745这个题知道了这种优化,但是当时没有联想到怎么做。直到这次打大连现场赛的时候看到B题。???这TM和百度之星那题不是一模一样?然后就后悔当时没有补完这个题。回到正题,这个题的这种
2016-10-19 01:56:26 1445 2
原创 bnu52305Around the World
链接:https://www.bnuoj.com/v3/problem_show.php?pid=52305题意:给定一棵n个节点的树,a到b边权c的意义表示a到b有2*c条不同的边,求从1开始遍历这颗树有多少种不同的排列。分析:将样例中的树画出来我们可以看出一些规律,有些点只能出现在一些特定的位置,比如1只会出现在奇数位且又不是任意奇数位。这个题并不能随便排列而是有些限制。我们需要找到某
2016-10-09 22:48:40 473
原创 bnu52297Coins
链接:https://www.bnuoj.com/v3/problem_show.php?pid=52297题意:给你a1个1元硬币,a2个2元硬币,a3个3元硬币,求用这些硬币可以拼出多少个不同的面额。分析:这个题目是考分类讨论和一些构造技巧,首先我们很容易知道如果a1,a2,a3都不为0的情况,那么1,2,3元硬币都只是有一个那么我们可以用这3枚硬币使得原价值增加{1,2,3,4,5,
2016-10-09 22:30:35 486
原创 hdu4005The war
链接:http://acm.hdu.edu.cn/showproblem.php?pid=4005题意:给定n个点m条边的无向图,求任意添加一条边后的最小割边的最大值。分析:因为是图很明显我们要先缩点将图缩成一颗树,然后会发现题目变成在树上添加一条边求最小不在环上的最大值。很显然那个最大值应该尽量不和最小边在一条链上,那么我们以最小边为根dfs确定一条链尽可能将小边包含使得不在链上的边的最
2016-10-08 23:15:53 371
原创 hdu2460Network
链接:http://acm.hdu.edu.cn/showproblem.php?pid=2460题意:给出一个n个点m条无向边,然后逐步加入一些边,求每次加入当前边后图内还剩多少条割边。分析:先用tarjan缩点,将图缩成一颗树,然后在树上加个边权每次缩到lca就好了。详见代码。代码:#include#include#include#include#include#in
2016-10-07 21:36:45 693
原创 hdu5918Sequence I
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5918题意:给出两个数组a,b。b数组匹配a数组,不是连续匹配,而是相隔p位置匹配,求a数组中能匹配出多少次b数组。分析:将a数组按%p分组然后kmp即可,O(n+m)。代码:#include#include#include#include#include#include#inc
2016-10-07 18:29:56 1146
原创 hdu5921Binary Indexed Tree
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5921题意:给出多个n,求∑ni=1∑i−1j=0g(i,j)\sum_{i=1}^{n}\sum_{j=0}^{i-1}g(i,j),g(i,j)g(i,j)的意义是ii和jj在二进制意义下去掉公共前缀后的1的个数之和,例如11={1011},13={1101},去掉公共前缀{1100}后剩下{0011}和
2016-10-07 16:59:10 1224
原创 hdu5919Sequence II
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5919题意:给定n个数,q个询问,每次询问给定一组l,r,要求在线。求数组中l~r中每个数第一次出现的位置的中位数。分析:我们可以求出每个数前一次出现的位置为pre[i],那么对于区间[l,r]中我们只需要求出右多少个pre[i]代码:#include#include#include#
2016-10-07 14:18:14 528
原创 hdu5929Basic Data Structure
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5929题意:要求模拟一个存入0,1的栈,有4个操作1:push a,在栈顶插入a。2:pop,删除栈顶。3:reverse,将这个栈翻转一下。4:query,询问栈顶到栈底的atop nand atop-1 nand ... a1。分析:前3个操作都很容易实现,唯一的难度就是快速就是这个答案。我们会
2016-10-06 21:02:25 1469 3
原创 hdu5927Auxiliary Set
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5927题意:给定一棵以1为根的n个节点的树,多个询问,每次询问给出一个集合,集合内的点表示为不重要的点(不在集合内的点就是重要的点),求给定这个集合后有多少点能进入另一个集合,点x进入另一个集合的要求:1:重要的点。2:有两个重要的点的最近公共祖先为x。分析:其实对于每一个询问我们只要判断哪些不重要
2016-10-06 20:52:49 1240
原创 hdu5925Coconuts
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5925题意:给定一个R*C的矩阵和n个障碍点,求出矩阵中所有联通块的大小。分析:给出的矩阵大小是10^9的,但是障碍点却只有200个,我们可以将矩阵压缩,因为有意义的边界值就200个,加上空白地方的位置我们就能压缩成一个最多400*400的矩阵了,然后dfs一下就行了。代码:#include
2016-10-06 20:41:41 1495
原创 hdu5896Running King
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5896题意:给定多个n,求有多少n个点的无向无重边无自环的图满足有环,mod1004535809mod 1004535809。分析:其实看到这个modmod是一个可ntt的费马素数就应该有点方向。直接构图我们不好求,我们反向求有多少n个点的森林设为f(n)f(n),那么我们就可以用n个点的图的总数2n∗(n−
2016-10-01 19:23:14 737
原创 hdu5887Herbs Gathering
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5887题意:n个物品的01背包,n分析:比赛的时候看到这题没想法,以为要什么奇淫技巧才能过。虽然看到了出题人说的是随机的数据但是TM加个最优解优化就能将2^n优化到15ms也是没脾气。代码:#include#include#include#include#include#inclu
2016-10-01 14:41:39 491
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人