
其他 构造
文章平均质量分 82
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 评论 -
Codeforces Round #352 (Div. 2)C. Recycling Bottles
链接:http://codeforces.com/contest/672/problem/C题意:给定两个人的位置x1,y1,x2,y2和垃圾桶在的位置x,y,再给n个垃圾的位置,每次一个人只能携带一个垃圾,求将所有垃圾送入垃圾桶要走的最短距离。分析:这个题目的情况太多太杂,导致终测后通过人数从800+人变成了300+人。其实这个题目情况复杂是因为跟垃圾的位置和人的位置的综合原因造成的,如原创 2016-05-12 19:38:29 · 333 阅读 · 0 评论 -
Codeforces Round #353 (Div. 2)C. Money Transfers
链接:http://codeforces.com/contest/675/problem/C题意:给定和为0的n个数a[1]~a[n],形成环即a[1]与a[n]相邻,操作:每个位置的数能向它相邻的位置转移。求最后变成全0最少需要转移多少次。分析:这题在比赛的时候卡了很多人,这个建模思想在大白书前两页就有,稍微有一点点变形,没看过的同学试着看看我写的分析吧。我们设第i的位置a[i]向它前面原创 2016-05-17 21:07:48 · 365 阅读 · 0 评论 -
Codeforces Round #351 (VK Cup 2016 Round 3, Div. 2 Edition)
链接:http://codeforces.com/contest/673problemA. Bear and Game:看90分钟电视,有n个有趣点,如果持续15没有看到有趣的点,那么就关电视,问什么时候会关掉电视。分析:水题。找到第一个跨度大于15的点即可,注意答案最大90。代码:#include#include#include#include#include#incl原创 2016-05-08 21:39:51 · 827 阅读 · 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 评论 -
计蒜客 联想专卖店大促销
链接:https://nanti.jisuanke.com/t/11214题意:中文题。分析:对于三种类型,它们的公共点都是一个U盘和一个鼠标,除此之外类型a只需要一个机械键盘,类型b一个鼠标,类型c一个U盘。那么我们直接二分能凑出的最多满足条件的套餐即可。代码:#include#include#include#include#include#include#inclu原创 2016-07-10 21:39:29 · 732 阅读 · 0 评论 -
IX Samara Regional Intercollegiate Programming Contest K. Palindromization
链接:http://www.codeforces.com/gym/100971/problem/K题意:给定一个字符串,要求判断删除一个字符之后能否形成回文串。分析:因为要删除一个字符,那么显然对称轴只能有一两种情况。代码:#include#include#include#include#include#include#include#include#include原创 2016-07-11 15:39:56 · 957 阅读 · 0 评论 -
Codeforces Round #359 (Div. 2)D. Kay and Snowflake
链接:http://codeforces.com/contest/686/problem/D题意:给定一棵以1为根的n个节点的树,然后m个询问,每次询问给定一个x。求在x为根的子树中的质心是谁。x的质心:在这颗子树中删掉它的质心,然后变成若干课小树,要求小树中的最大的size要分析:我们直接预处理出每个点的质心,很容易想到x的质心一定在x和x的size最大的儿子的质心的路径上。为什么呢?画原创 2016-06-30 00:26:33 · 474 阅读 · 0 评论 -
Codeforces Round #359 (Div. 2)E. Optimal Point
链接:http://codeforces.com/contest/686/problem/E题意:给定t组数据,每组给n个点(x,y,z)。求一个点(X,Y,Z)使得max(|xi-X|+|yi-Y|+|zi-Z|)最小。分析:叉姐的题解很清楚了,我就不再重复一遍了。叉姐题解链接。O(t*log(3e18))。代码:#include#include#include#inclu原创 2016-06-30 00:35:50 · 1063 阅读 · 2 评论 -
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 评论 -
Codeforces Round #357 (Div. 2)
链接:http://codeforces.com/contest/681problemA:水题problemB:水题problemC:给定一个堆的操作序列,操作有:insert x,getmin x,removemin。这个序列可能是非法的,求将这个序列补充成合法的并且添加的操作最少。分析:按照给定的序列用优先队列模拟就行了,少了就加多了就删。代码:#include#in原创 2016-06-15 16:44:48 · 425 阅读 · 0 评论 -
hdu5735Born Slippy
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5735题意:给定n个点的树和操作opt,每个点有点权w[i]。要求对于每个节点i计算g[i]=max(g[j]+(w[i] opt w[j])),ans=sigma(1分析:正解的思路好厉害,膜膜膜。题解说得很清楚。我说我的理解吧,设w[i]=(a<<8)+b即a是w[i]的高8位b是w[i]的低8原创 2016-07-22 21:41:21 · 631 阅读 · 0 评论 -
Codeforces Round #356 (Div. 2)D. Bear and Tower of Cubes
链接:http://codeforces.com/contest/680/problem/D题意:给定一个m,要求构造一个最优的m'分析:m是1e15级别。我们设f(m)表示m对应的答案且x为最大的正整数满足x*x*x代码:#include#include#include#include#include#include#include#include#include原创 2016-06-17 21:37:51 · 456 阅读 · 0 评论 -
Codeforces Round #355 (Div. 2)D. Vanya and Treasure
链接:http://codeforces.com/contest/677/problem/D题意:给定一个n*m的矩阵,里面的元素是1~p中的,并且元素p只有一个,1~p-1的每个元素都至少1个。元素x表示钥匙x,有x的钥匙才能拿到x+1的钥匙,1是没有被锁起来的。求最后打开p那个宝箱最少要走多少步。分析:如果我们暴力直接用元素i去更新所有的i+1那么最差复杂度是n^2*m^2,即只有1,原创 2016-07-06 22:51:01 · 451 阅读 · 0 评论 -
hdu5699货物运输
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5699题意:中文题。分析:因为只能建一个传送站并且要求最大的时间最小,我们二分答案,但是怎么判断能?设当前答案为x建立传送站的位置为L,R,显然只有r-l>x的运送方案才会需要使用传送站且会满足|l-L|+|r-R|=L+R>=l+r-x。(2)l-r+x>=L-R>=l-r-x。我们只需要判断这两原创 2016-07-20 19:48:53 · 338 阅读 · 0 评论 -
51nod卷积和
链接:http://www.51nod.com/contest/problem.html#!problemId=1607题意:中文题。分析:直接枚举第i位和第j位对应的贡献,确定了第i位和第j位会有影响那么长度也确定了i+j-1,然后在可行范围内计数即可。代码:#include#include#include#include#include#include#includ原创 2016-08-01 14:14:16 · 1478 阅读 · 0 评论 -
NEU1694: Primorial vs LCM
链接:http://acm.neu.edu.cn/hustoj/problem.php?id=1694题意:给定多个n,求LCM(1~n)/pi{pi为1~n中的素数}。分析:因为n太大有10^14,我们得观察一些性质才行。因为要求的是最小公倍数然后除掉所有的质数,这里很明显大于sqrt(n)的素数就没意义了,因为最后答案中留下的只能是指数大于1的素数。那么我们就将素数范围缩小到了10^7原创 2016-05-10 21:26:55 · 1066 阅读 · 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 评论 -
bzoj2286: [Sdoi2011消耗战
链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2286题意:中文题。分析:题目中要求所有的关键点与根1断开,很容易想到树形dp。但是由于多组询问会导致时间*m。单次O(n)不可取。很显然是要优化的,我们发现单次O(n)时还是会做很多无用功,而且题目说sigma(ki)代码:#include#include#include原创 2016-04-07 20:23:07 · 1938 阅读 · 0 评论 -
bzoj2697: 特技飞行
链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2697题意:中文题。。分析:看到这题时。脑子里第一印象是dp?因为感觉很好dp的样子?然后发现dp方程好像不是很好设。在仔细想想,样例是怎么样得来的呢?仔细算了算,发现好像有好多中方式构造。然后想了想贪心?感觉如果在首尾放最大值好像很优的样子,并且这个时候看出来了-->无论怎么放,都只与原创 2016-01-04 01:48:07 · 428 阅读 · 0 评论 -
2014ACM广州赛区现场赛J题题解.
Yue Fei is one of the most famous military general in Chinese history.He led Southern Song army in the wars against the Jin dynasty of northern China. Yue Fei achieved a lot of victory and hopefully原创 2014-12-06 14:28:03 · 869 阅读 · 0 评论 -
ICPCCamp2016day3F.The Jump Address
链接:等camp过后挂出来再加题意:给定n,k,对于所有的n的排列P1,P2...Pn,若Px>Px+1则给这个排列的权值+x,求权值为k的n的排列有多少种。n分析:如果强行dp会发现只能有n^4的状态和复杂度。出题人的思路很巧妙,但是由于本身具有规律,被很多人找规律过了2333。这个问题可以转换为求所有n的排列中逆序对个数=k的排列有多少种。怎么证明呢?我们知道原题中如果之前已经放好i个原创 2016-01-28 00:46:05 · 507 阅读 · 0 评论 -
ICPCCamp2016day4F.Similar Subsequence
链接:等camp过后挂出来再加题意:给过两个数组a[n]和b[m],求b数组中是否存在长度为n的子序列与a数组相似,两个数组相似的定义是对于任意i,j都满足(ai-aj)*(bi-bj)>0。并且保证a数组是一个n的排列和保证给出的a数组中不存在与{2,1,3}和{2,3,1}相似的子序列。输出Yes/No。分析:首先我们分析给出的不存在与{2,1,3}和{2,3,1}相似的子序列的条件有原创 2016-01-29 01:04:47 · 639 阅读 · 0 评论 -
bzoj3398: [Usaco2009 Feb]Bullcow 牡牛和牝牛
链接:http://www.lydsy.com/JudgeOnline/problem.php?id=3398题意:中文题。。。分析:一个简单的递推水题。。本来看黄学长博客先用来练下逆元的,结果发现组合数学的方法好像数据强一点会爆?然后当做练下一组合数学看了下黄学长的代码,发现模数是素数的组合数学的时候求逆元只要用快速幂+费马小就行了。。貌似之前用的那种递推O(n)求逆元那种方法有点无用?原创 2016-02-10 00:56:18 · 923 阅读 · 1 评论 -
bzoj1485: [HNOI2009]有趣的数列
链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1485题意:中文题。。。分析:题目需要我们将1~2*n这些数填入长度为2*n的数组并且要求(1)奇数位是递增,(2)偶数为也是递增,(3)相邻的a[2*i-1]代码:#include#include#include#include#include#include#in原创 2016-03-01 18:54:41 · 730 阅读 · 0 评论 -
bzoj2822: [AHOI2012]树屋阶梯
链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2822题意:中文题。。。分析:我们令高度为n的时候方案数为f[n],那么我们考虑在从高度为n变成n+1时所增加的方案,因为高度为n只能用n个钢材搭建,那么变成n+1时这新加的这块放哪呢?我们把它放在"直角三角形"的直角处,我们可以看出一个高度为n的阶梯有n个台阶,那么这n个矩形每个都对应原创 2016-03-01 19:28:37 · 856 阅读 · 0 评论 -
bzoj3907: 网格
链接:http://www.lydsy.com/JudgeOnline/problem.php?id=3907题意:中文题。。。分析:用卡特兰数的非常规法证明F[n]=C(2*n,n)-C(2*n,n-1)那种方法可以分析出这题的答案为C(n+m,n)-C(n+m,n+1),详见百度百科,再用高精度处理一下即可。代码:#include#include#include#include#inc原创 2016-03-01 20:33:00 · 1418 阅读 · 0 评论 -
51nod1613 翻硬币
链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1613题意:中文题。。。分析:自己找规律找出一些,并不会系统分析,完整的分析在这:https://www.zhihu.com/question/26570175。膜膜膜。代码:#include#include#include#include原创 2016-03-02 16:25:59 · 505 阅读 · 0 评论 -
UVA 1393 Highways
题意:给定多组n,m,求在一个n*m的点矩阵中有多少条至少过两个点的直线。分析:我们设dp[i][j]表示在一个边长为i*j的矩形中,有多少条过点(i,j)的满足条件的直线,那么就有dp[i][j]=dp[i-1][j]+dp[i][j-1]-dp[i-1][j-1]+(gcd(i,j)==1),然后我们设在矩形i*j中有多少题目要求的直线为ans[i][j],那么有ans[i][j]=ans原创 2016-03-03 16:17:22 · 319 阅读 · 0 评论 -
UVA 12075Counting Triangles
题意:给定多组n,m,求一个边长为n*m的网格表中的网格顶点能组成多少个三角形。分析:网格点组成三角形,直接点求就是C((n+1)*(m+1),3)的总的取三个顶点的情况数减去三点共线的情况,我们能直接减去在平行于x轴和y轴的直线上的情况(n+1)*C(m+1,3)+(m+1)*C(n+1,3),还有就是斜线上的三点共线,我们只算斜率为正的直线上的情况,最后*2即可。我们设dp[i][j]表示原创 2016-03-03 17:41:09 · 354 阅读 · 0 评论 -
UVA 10253Series-Parallel Networks
题意:给定n,求有n条边的串并联网络的方案数。分析:《算法竞赛入门经典训练指南》数学基础例题7。书中给出的建模思想很好,并且对组合数学求解和dp的边界情况分析都很好。多学习,多积累。代码:#include#include#include#include#include#include#include#include#include#include#include#原创 2016-03-19 16:42:05 · 380 阅读 · 0 评论 -
Codeforces Round #345 (Div. 2)
链接:http://www.codeforces.com/contest/651problemA:给定两个操作手柄的初始电量a,b,只有一个充电器,每一分钟如果不充电要消耗2%,在这分钟开始时就要消耗1%结束时再消耗1%,如果连上充电器会增加1%的电量。求两个手柄最多能撑多少分钟使得两个都有电。O(n)分析:while下去就行了。。特判一下(1,1)的情况。代码:#include原创 2016-03-09 19:49:28 · 462 阅读 · 0 评论 -
Codeforces Round #342 (Div. 2)
链接:http://codeforces.com/contest/625problemA:很经典的问题,你有n元钱,有两种牛奶,A:a元一瓶,B:b元一瓶,喝完返还瓶子退回c元,问最大能喝多少瓶牛奶。分析:贪心先全买A或者B,取最大的即可。代码:#include#include#include#include#include#include#include#inclu原创 2016-02-25 01:39:55 · 629 阅读 · 0 评论 -
Educational Codeforces Round 9
链接:http://codeforces.com/contest/632problemA:给定n,p,表示有n个人买了苹果(每次买剩下苹果的一半),p表示苹果的单价且为偶数,接下来n行字符串half表示当时第i个人买的时候苹果数为偶数,halfplus表示第i个人买的时候为奇数个,这个时候卖完之后剩的半个苹果会当礼物送给这个人。求一个卖了多少钱。O(n)分析:逆着算出总苹果数,再顺着算一下原创 2016-03-16 20:56:33 · 397 阅读 · 0 评论 -
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 · 514 阅读 · 0 评论