自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Gene_I must wait for the sunrise

热爱算法,知乎:https://www.zhihu.com/people/gene.liu

  • 博客(11)
  • 收藏
  • 关注

原创 【POJ 3977】【折半枚举】【超大背包】Subset【暑期 No.7】

题意:        给一串数字,选取其中的数字,使其值最小,并且选取数字的个数尽可能少. 分析:        因为数字范围很大,因此不能使用动态规划来计算,从而考虑折半枚举来进行计算。        将这串数字划分为两部分,第一部分用字典序枚举的方式输出所有的可能结果,将结果输入数组,再对数组进行升序。       再对该串数字的另一部分,进行字典序枚举,对于每一种可能...

2018-07-27 23:03:48 270

原创 【POJ 2785】【折半枚举】4 Values whose Sum is 0【暑期 No.6】

题意:        给定各有n个整数的四个数列A、B、C、D。要从每个数列中各取出1个数,使四个数的和为0。求出这样的组合的个数。当一个数列中有多个相同的数字时,把它们作为不同的数字看待。 分析:        如果直接对四个数列进行枚举的话,将是O(n^4)的复杂度,因此可以考虑折半枚举的思想。        将A、B数组相加的所有可能性列出来加入数组,O(n^2),再进行...

2018-07-27 22:52:12 260

原创 【POJ 3279】【开关问题】Fliptile【暑期 No.5】

题意:       有一个M * N的格子,每个格子可以翻转正反面,它们一面是黑色,另一面是白色。黑色的格子翻转后就是白色,反之亦然。游戏要求把所有的格子都翻转成白色。不过每次翻转一个格子时,与它上下左右相邻接的格子也会被翻转。求出最少需要多少次额能够将所有格子都翻成白色。      现在给定了每个格子的颜色,请求出用最小步数完成时,每个格子的翻转情况,如果最小步数的解有多个,输出字典序最...

2018-07-27 16:48:28 210

原创 【POJ 3276】【开关问题】Face The Right Way【暑期 No.4】

题意:        N头牛排成了一列。每头牛或者向前或者向后。为了让所有的牛都面向前方,农夫约翰买了一台自动转向的机器。这个机器在购买时就必须设定一个数值K,机器每操作一次恰好使K头连续的牛转向。请求出为了让所有的牛都能面向前方需要的最少的操作次数M和对应的最小的K。 分析:        此类问题一般都考虑状态递推的思想,即考虑后一个状态能不能由前一个状态所确定。     ...

2018-07-27 13:25:08 200

原创 【ZOJ 1964】【尺取】Bound Found【暑期 No.3】

题意:        给定一串数字,并给定一个目标数字t,求出一个区间,该区间上的所有值相加后取绝对值最接近t. 分析:        先考虑能不能用尺取来做,如果用尺取来做,那么尺取的数列必须是单调的,否则无法确定何时左右端点移动,因此考虑能不能用前缀和来记录每一个点.        因此考虑用sum[i]表示 1-i 的前缀和,并将sum[i]这个数列进行升序,因此sum[...

2018-07-27 13:04:55 234

原创 【POJ 3320】【尺取法】Jessica's Reading Problem【暑期 No.2】

题意:       为了准备考试,Jessica开始读一本很厚的课本。要想通过考试,必须把课本中所有的知识点都掌握。这本书总共有P页,第 i 页恰好有一个知识点ai(每个知识点都有一个整数编号)。全书中同一个知识点可能会被多次提到,所以她希望通过阅读其中连续的一些页把所有的知识点都覆盖到。给定每页写到的知识点,请求出要阅读的最少页数。 分析:        首先肯定需要求出总共有多...

2018-07-27 11:32:38 163

原创 【POJ 2456】【二分答案】Aggressive cows(暑假 No.1)

题意:       农夫约翰搭了一间有N间牛舍的小屋。牛舍排在一条线上,第 i 号牛牛舍在 xi 的位置。但是他的M头牛对小屋很不满意,因此经常互相攻击。约翰为了防止牛之间互相伤害,因此决定把每头牛都放在离其它牛尽可能远的牛舍。也就是要最大化最近的两头牛之间的距离。 分析:        该题答案是在一个区间之内,并且有单调性,而且对于每一个答案,验证起来都很方便。      ...

2018-07-27 11:02:07 534

原创 【区间dp】【Gym 100712L】01串切割问题 + 线段树优化

题意:        有一个01串,切割的规则为:①切割后的子串不能是 0101 或者 1010 这样交替的子串②切割后的子串长度不能超过 K        询问最少的切割次数 样例:         4                   //4组数据         6 3                //原串长度为6,子串的最长长度为3         ...

2018-07-22 23:52:33 271

原创 【POJ1276】【多重背包】凑货币问题

题意:(直接看输入)       735 3 4 125 6 5 3 350       633 4 500 30 6 100 1 5 0 1       735 0       0 3 10 100 10 50 10 10每行第一个数为需要凑出的货币,为total第二个数为有几种货币,为n接下来分别是该货币的数量,和该货币的面值,num[i] 与 v[i] 分...

2018-07-21 17:00:30 442

原创 POJ1015 Jury Compromise【背包问题】

题意:       选陪审团。n个候选人,选出m个人加入陪审团。辩方和控方会给n个人中的每一个人打分,分值0-20,辩方分值所加和为D,控方为P,要求 |D-P| 最小,如果方案不唯一,则选 D+P 最大的方案。 思路:        记 f[i][j] 为挑出 i 个人,分差为 j 时,总分值最大。        则 f[i][j] = max( f[i][j] , f[i-...

2018-07-21 01:03:34 192

原创 【完全背包】自然数拆分Lunatic版

题目:       给定一个自然数N,要求把N拆分成若干个正整数相加的形式,参与加法运算的数可以重复。求拆分的方案数mod 2147483648的结果。1 <= N <= 4000。 地址:http://contest-hunter.org:83/contest/0x50%E3%80%8C%E5%8A%A8%E6%80%81%E8%A7%84%E5%88%92%E3%8...

2018-07-18 22:21:47 802

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除