
online judge Hdu
文章平均质量分 83
Fsss_7
这个作者很懒,什么都没留下…
展开
-
hdu5601N*M bulbs
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5601题意:给你一个n*m的矩阵,矩阵内每一个位置的值是0或1,给定的是初始状态,然后让你从左上角走到右下角,每次都能向着4个方向走,每走到一个格子的时候它原来的值x^=1。问最后是否能从右下角离开时使得整个矩阵全部为0。分析:其实出题人在解释了题目样例之后还是挺好想的,首先我们能知道想将原来的1变原创 2015-12-28 01:12:59 · 464 阅读 · 0 评论 -
hdu5603the soldier of love
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5603题意:给你多组数据,每组数据第一行是一个n和m,表示的意义是n条线段和m组点。接下来是n条线段的左端点和右端点,m行每行第一个是这组点的个数Ki,接下来同一行有Ki个数表示点的位置。问题是求对于每组点来说,有多少条线段至少有一个该组上的点在线段上,输入m行。分析:其实题目要求的问题,我们有一种原创 2015-12-29 22:10:14 · 501 阅读 · 0 评论 -
hdu5514Frogs
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5514题意:给定n,m,有n只青蛙,m块编号0~m-1的围成环石头。初始时所有青蛙都在第0块石头上,然后给定n个整数表示n只青蛙每次跳的固定长度,青蛙一直绕环跳,求最后被跳过的石头的编号之和,同一块石头不多次计算。分析:一看到这个题的时候就想到容斥,以为很容易看到会有多只青蛙跳到同一块石头上。首先我原创 2016-01-16 02:18:29 · 805 阅读 · 0 评论 -
hdu5602Black Jack
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5602题意:给4个字符,字符为"A234566789TJQK"中之一,表示扑克的点数,当然A=1,T=J=Q=K=10。前两个字符是闲家的牌,后两个字符是庄家的牌。玩法是21点的规则(闲家先选择是否加牌--可多张,然后庄家选择是否加牌--可多张),超过21点直接算输,都加完后点数大赢。求最后闲家获胜的概原创 2015-12-30 01:45:03 · 541 阅读 · 0 评论 -
hdu1695GCD
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1695题意:每组数据给出5个整数a,b,c,d,k,并且保证a=c=1。。。然后求有多少对数对(x,y)&&gcd(x,y)=k&&a分析:首先我们将b/=k,d/=k。然后求1~b和1~d中有多少组数对互质即可。直接遍历1~b中每个数然后在1~d中查询有多少个互质的数即可,设有get(i,j)表示原创 2016-01-16 21:07:07 · 466 阅读 · 0 评论 -
hdu2829Lawrence
链接:http://acm.hdu.edu.cn/showproblem.php?pid=2829题意:给定n,m,有n个站点,m个炸弹能炸掉m段铁路,使得最后剩下的价值最小,计算方法看题目中的计算公式。分析:这题是09年的多校,是很旧的斜率优化的老题了。我们设dp[i][j]表示放了i个炸弹并且最后那个炸弹的位置为j的时候的最小价值。那么显然有转移方程dp[i][j]=min(dp[i-原创 2016-01-24 12:59:40 · 607 阅读 · 0 评论 -
hdu5647DZY Loves Connecting
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5647题意:BC76div1的B题。分析:一个很明显的树DP,我们设tr[i]表示以i为根的子树方案数,sum[i]表示以i为根对答案做的贡献。但是!在计算贡献的时候不能先把tr[i]乘出来,然后分别求各个儿子的贡献,因为可能会出现tr[i]==0的情况,这样逆元是无效的。我们应该在统计儿子x的时候原创 2016-03-19 22:14:11 · 764 阅读 · 0 评论 -
hdu1402A * B Problem Plus
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1402题意:计算A*B。分析:由于A,B很大,长度可能达50000,所以一般的高精度乘法是不行的。所以要用FFT,这个叫快速傅里叶变换。算法导论第30章有讲,讲得挺清晰的,还有就是picks的博客也不错:http://picks.logdown.com/posts/177631-fast-fouri原创 2016-03-20 21:45:39 · 949 阅读 · 0 评论 -
hdu4358Boring counting
链接:http://acm.hdu.edu.cn/showproblem.php?pid=4358题意:给定一棵n个节点的树和k,每个点有点权,再给q个询问,每次询问:在以v为根的子树中有多少个数恰好出现了k次。分析:遇到子树问题,首先考虑到的就是dfs序,然后发现还有一个条件k。我的处理方式是:先离散化,然后构出dfs序,然后处理出in[],out[],lose[]数组,如果当前i中的数原创 2016-04-06 20:24:36 · 511 阅读 · 0 评论 -
hdu5297Y sequence
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5297题意:给定多组n,r。有整数1,2,3...INF。除去其中的a^b的数字,2分析:首先我们可以知道我们只要对b是质数的情况进行处理就好了。但是在除去b==2和b==3的时候将b==6的情况减去了2次,这里要容斥。同时我们可以知道最大的b应该小于64。那么我们只要先预处理出代码:#in原创 2016-03-14 21:57:05 · 379 阅读 · 0 评论 -
BCBestCoder Round #74
链接:BestCoder Round #74A:给定n,接下来是n-1个整数a[i]。a[i]表示在字符串s中从第i个开始的子串和从第i+1个开始的子串的最长公共前缀为a[i]。求字符串s有多少种情况。分析:首先我们处理无解的情况,显然a[i]+i>n是无解的,并且相邻的a[i]如果非0则必然为a[i]-1==a[i+1]。然后就只要算方案数了。O(n)代码:#include#i原创 2016-03-06 21:17:14 · 317 阅读 · 0 评论 -
BestCoder Round #77
链接:http://bestcoder.hdu.edu.cn/分析:1001,子集异或和的异或和,除了n==1的情况外所有元素都会在偶数个子集中出现,所以特判一下即可。O(n)代码:#include#include#include#include#include#include#include#include#include#include#include#inc原创 2016-03-27 15:53:15 · 492 阅读 · 0 评论 -
hdu1402A * B Problem Plus(NTT)
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1402题意:大数乘法分析:练习下NTT。学习网站:http://blog.youkuaiyun.com/acdreamers/article/details/39026505 http://blog.miskcoo.com/2015/04/polynomial-multiplication-and-fast-原创 2016-03-28 20:37:03 · 1143 阅读 · 0 评论 -
hdu2795Billboard
链接:http://acm.hdu.edu.cn/showproblem.php?pid=2795题意:给定一个高为h宽为w的公告栏,然后给出n张要粘贴的高为1宽为wi的公告。每张公告都会选择能贴的最高行的靠左边贴。能贴输出行不能贴输出-1。分析:因为最多才200000张公告,我们可以以行为基础建线段树,每次找最左边的剩余宽度还大于等于wi的位置。O(nlog(min(h,n)))。代原创 2016-04-26 19:24:32 · 346 阅读 · 0 评论 -
hdu5663Hillan and the girl
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5663题意:给定n,m,求数对(i,j)的个数{gcd(i,j)!=x,1。∑ √分析:很明显的莫比乌斯反演。首先我们将问题变为求有多少数对是等于完全平方数的,令g[x]={(i,j),gcd(i,j)=x},f[x]=∑g[d]{x|d}。显然f[x]=(n/x)*(m/x)所以g[x]=∑mu[原创 2016-04-10 16:25:13 · 1006 阅读 · 0 评论 -
hdu4288Coder
链接:http://acm.hdu.edu.cn/showproblem.php?pid=4288题意:给定n个操作:add x:添加一个元素x进入集合,del x:将集合中的x删除,sum:将集合中所有元素排序,输出i%5==3的a[i]的和,并且题目说明每个add的x都不相同。分析:首先我们将所有操作读入,将所有x离散化一下,这样的话我们就只要每次将元素插入到它对应的位置即可。但是问题原创 2016-04-27 15:50:13 · 426 阅读 · 0 评论 -
hdu1166敌兵布阵
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1166题意:中文题。分析:线段树练习题。从今天开始练练线段树的姿势。单点更新,区间查询。代码:#include#include#include#include#include#include#include#include#include#include#include原创 2016-04-14 19:22:35 · 311 阅读 · 0 评论 -
hdu1754I Hate It
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1754题意:中文题。分析:线段树练习题。单点更新,区间查询最大值。(那些跑得快的应该是写的zkw线段树吧。)代码:#include#include#include#include#include#include#include#include#include#include原创 2016-04-14 19:31:17 · 399 阅读 · 0 评论 -
hdu1394Minimum Inversion Number
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1394题意:给定一个长度为n的数组,那么每次将第一个元素放在最后一个能形成n个长度为n的数组,求出所有情况中逆序对最少的个数。分析:设当前第一个元素为x,那么比它小的有x个元素,比它大的有n-x-1个元素,将它放到数组为对逆序对的变化是n-2*x-1个。那么我们只要枚举这个分开的位置m就行了。代原创 2016-04-14 20:18:40 · 746 阅读 · 0 评论 -
hdu4521小明系列问题——小明序列
链接:http://acm.hdu.edu.cn/showproblem.php?pid=4521题意:中文题。分析:最长上升子序列,距离大于d。一点点变动而已,用线段树或树状数组维护一下小当前值a[i]且在i-d-1之前的所有的dp[j]就行了。代码:#include#include#include#include#include#include#include#i原创 2016-05-10 22:24:03 · 589 阅读 · 0 评论 -
hdu1907John
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1907题意:有n个装有若干糖果的盒子,有两个人轮流拿糖果,只能在一个盒子中拿,至少拿一个糖果最多可拿掉整盒。拿完最后一次的人输。分析:经典的Nim博弈的一点变形。设糖果数为1的叫孤独堆,糖果数大于1的叫充裕堆,设状态S0:a1^a2^..an!=0&&充裕堆=0,则先手必败(奇数个为1的堆,先手必败原创 2016-05-11 15:31:54 · 1564 阅读 · 0 评论 -
hdu2509Be the Winner
链接:http://acm.hdu.edu.cn/showproblem.php?pid=2509题意:给出n堆苹果,每次可以选择一堆苹果取出一些(至少1个,最多整堆),被取的那一堆剩下的x个苹果可以保持为1堆或者分为2堆。最后取完的人输。分析:同hdu1907http://blog.youkuaiyun.com/fsss_7/article/details/51374659代码:#inclu原创 2016-05-11 16:19:03 · 701 阅读 · 0 评论 -
hdu1536S-Nim
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1536题意:给定k个数s[1]~s[k],再给定多组数据,每组数据给定n个数字表示有n个正数a[1]~a[n],玩家每次可以从某一堆里减去一个s[j]。无法操作就输了。分析:博弈中SG函数的经典应用。代码:#include#include#include#include#includ原创 2016-05-11 17:18:45 · 462 阅读 · 0 评论 -
hdu1848Fibonacci again and again
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1848题意:中文题。分析:基础的SG函数的应用。代码:#include#include#include#include#include#include#include#include#include#include#include#include#pragma com原创 2016-05-13 20:47:54 · 351 阅读 · 0 评论 -
hdu1850Being a Good Boy in Spring Festival
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1850题意:中文题。分析:这题从经典的nim博弈变为了求先手取第一次的方案数,这其实就是考察我们对于nim博弈这个原理的理解,因为我们的异或和xor只有非0的时候才有先手胜的方法,那么我们只要考虑怎么样才能从将异或和变为0,只要简单思考一下我们就能知道只要将xor的最高位二进制减小至剩余的位的数值大原创 2016-05-13 20:59:18 · 466 阅读 · 0 评论 -
hdu3466Proud Merchants
链接:http://acm.hdu.edu.cn/showproblem.php?pid=3466题意:给定n个物品的信息,Pi,Qi,Vi,购买物品i需要至少Qi元,但实际只有付出Pi元,获得的价值为Vi。给定m元,求最大能获得多大的价值。分析:很明显的01背包的变形,但是其中的证明却是需要严谨证明,之前马虎的做过一遍,这次补上是为了严谨证明一下,自己脑补的,如有问题希望看到的人能够指出原创 2016-05-04 15:28:38 · 1723 阅读 · 1 评论 -
hdu5668Circle
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5668题意:给定n个人的约瑟夫环的出队时间点,求出构造这个出队序列的最小报数k,如果无解输出"Creation August is a SB!"。分析:看到题解说是模拟得出n个不定方程,然后用中国剩余定理求解。我想这个模拟想了半天,是不是像普通的数学方法求最后一个出队编号一样去做。然后这样想了很久,原创 2016-05-05 22:30:47 · 787 阅读 · 0 评论 -
hdu1517A Multiplication Game
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1517题意:给定一个整数n,先手从1开始操作,谁先使这个数字>=n谁就获胜。操作:乘以2~9任意一个数。分析:之前做的博弈都是将大数减小,这种博弈是变大,有点不同,但是博弈的基础理论还是不变的,设P(必败点),N(必胜点),那么初始有n~∞是必败点,那么能一步操作到达必败点为必胜点:n/9~n-1(原创 2016-05-18 14:36:48 · 396 阅读 · 0 评论 -
hdu1079Calendar Game
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1079题意:给定一个在1990.1.1~2001.11.4之间的日期year,month,day,两人轮流进行操作:(1)将日期变为下一天。(2)day不变month往后挪一个月,如果日期中下一个月没有day这一天则不能进行操作。谁不能操作谁输。分析:一个处理日期的前一天和后一天、后一个月的问题,加原创 2016-05-18 15:43:41 · 403 阅读 · 0 评论 -
hdu5126stars
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5126题意:给定n个操作,1:(x,y,z)添加一个在三维空间内的在(x,y,z)的点。2:询问,给定(x1,y1,z1)-(x2,y2,z2)求在这个长方体内的点。分析:在普通cdq分治上多了一维,那么套一个cdq分治就行啦。cdq套cdq,过程很简单,但是复杂度高一点而已。O(n(logn)^3原创 2016-05-10 00:44:37 · 1086 阅读 · 0 评论 -
hdu4611Balls Rearrangement
链接:http://acm.hdu.edu.cn/showproblem.php?pid=4611题意:给定多组数据,每组有n,a,b。求sigma(i=0~n-1)abs(i%a-i%b)。分析:很显然我们会想到lcm(a,b)是循环节,因为a=10^5,爆了求lcm的贡献不好求,我们想想该怎么快速求得一个lcm块中的价值。如果你随便打个表或者画画图就会发现很多连续的段内是相同的值,那么原创 2016-07-10 17:15:36 · 379 阅读 · 0 评论 -
hdu5691Sitting in Line
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5691题意:中文题。分析:状压dp,设dp[i][j]表示选择了i集合的数放在前面那些位置并且最后一个是a[j]时的最大值。转移的话直接找可行状态转移到下一个可行状态即可。代码:#include#include#include#include#include#include#in原创 2016-07-22 15:00:02 · 357 阅读 · 0 评论 -
hdu5715XOR 游戏
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5715题意:中文题。分析:二分+dp。要求最小值最大,很容易想到二分答案,但是对于答案x怎么判断是否可行呢?我们可以用dp[i][j]表示前i个元素分成j组是否可行来判断。显然dp[i][j]=max(a[i]^a[k])并且要求i-k代码:#include#include#includ原创 2016-07-22 16:31:22 · 356 阅读 · 0 评论 -
hdu4315Climbing the Hill
链接:http://acm.hdu.edu.cn/showproblem.php?pid=4315题意:有一群人在爬山,每个人有个离山顶的距离,且没有两个人在同一位置,可以多个人在山顶,其中有一个国王在位置k(标号),两个人轮流操作:任意选一个人然后将他向上移动至少位置1且不能越过其他人,谁将国王移动到山顶谁获胜。分析:如果没有国王的话,显然和poj1704一样,但是有了国王我们就要在处理原创 2016-07-12 16:22:32 · 764 阅读 · 0 评论 -
hdu5714Helter Skelter
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5741题意:给定一个01交替的字符串s的压缩表示和m个询问。00110的压缩表示为"221"表示先2个0再2个1再1个0。然后给定m个询问每个询问a,b,问在原s串中是否存在一个区间[l,r]中恰好是0的个数为a,1的个数为b。分析:这是个找规律的题,其实多分析下就行了,一些猜想虽然不好证但是正原创 2016-07-23 17:06:13 · 427 阅读 · 0 评论 -
hdu5750Dertouzos
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5750题意:中文题意。分析:用类似均摊的方法在遍历素数的时候加上n/d这个限制会优化。代码:#include#include#include#include#include#include#include#include#include#include#include#原创 2016-07-23 22:26:38 · 431 阅读 · 0 评论 -
hdu5749Colmerauer
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5749题意:中文题意。分析:如题解所说求出每个元素的a,b,c,d之后计算贡献的系数即可。。规律好难找,其实系数为a*b*c*d*(a+b)*(c+d)/4。代码:#include#include#include#include#include#include#include#原创 2016-07-23 22:29:46 · 460 阅读 · 0 评论 -
hdu4786Fibonacci Tree
链接:http://acm.hdu.edu.cn/showproblem.php?pid=4786题意:给定n个点m条边,边分为黑白两种边。问是否存在一棵生成树使得树中的白边数量是一个斐波那契数。分析:很明显可行的斐波那契数很少才24个,但是怎么判断当前这个数是否能是一棵生成树中的白边数呢?首先肯定是要判断所有边是否能生成树。然后最少要用多少条白边呢?用完所有的黑边还缺多少条边生成树就差多原创 2016-07-24 20:12:41 · 536 阅读 · 0 评论 -
hdu4790Just Random
链接:http://acm.hdu.edu.cn/showproblem.php?pid=4790题意:给定两个区间[a,b]和[c,d]和两个数p,m,0分析:因为数据范围都是10^9,如果直接暴力是不行的。我们先用容斥原理将x和y的范围变成[0,a']和[0,b']且a'代码:#include#include#include#include#include#inc原创 2016-07-24 19:20:38 · 378 阅读 · 0 评论 -
hdu5745La Vie en rose
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5745题意:给定一个母串s和一个子串p。问s中有多少个位置可以匹配p,可以不完全匹配,p字符串中的每个位置的字符最多可以变动一次(不变的,与前面的字符交换,与后面的字符交换)。分析:做多校学姿势。xg的题解解释得很好,但是对于我这种没写过这种优化的人来说还是要看代码学习一遍,我说下我的理解吧。首先x原创 2016-07-23 14:37:06 · 1062 阅读 · 0 评论