摘要: DP其实也是和搜索一样可以有剪枝的,昨晚看到一个超级好的DP剪枝题:(HDU - 5009)N段东东,要染色,每次给一个区间染色需要的花费为该区间颜色总数的平方。每一段只能被染一次色。求最少花费将所有区间染色。 N=i的话,还不如直接每次只染一小段,所以循环就可以停止了。优化B:比如数据3 4 2 ... 阅读全文
posted @ 2014-10-12 09:48 lzw4896s 阅读(672) 评论(1) 推荐(1) 编辑
摘要: 题目大意:一根树枝有N段,每一段有一个分数,可以选取一些不完全包含(可以相交)的区间,每次选取可以得到区间里所有数之和的分数。求最大得分。解题过程:1.很明显的dp,默认选取区间的顺序是从左往右,F[i][j]表示最后选的区间为[i,j]的最优解(ij g[i][j]=max{g[i-1][j],F... 阅读全文
posted @ 2014-10-12 09:40 lzw4896s 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给出N种药水的价格,然后给出一些形如A B C的关系,表示 A药水+B药水可以组合出 C药水(保证 A+B不会得到多种药水)。要求得到1号药水的最少花费和相应的方案数。N<=1000。解题过程:1.一开始没考虑到会有环的情况(比如A+B=C,B+C=A),想成了树形dp,还以为是大水题,结... 阅读全文
posted @ 2014-10-12 09:01 lzw4896s 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给出N种木棍(每种木棍数量无限)的长度(i,那么集合Qi中最大的不能被组合出来的数就是 D[i]-P。检查所有的D[i]取最大值就是答案了。总结:非常灵活的图论+数论题,图论模型的转化非常巧妙,真心好题,收获很大。 阅读全文
posted @ 2014-10-12 08:46 lzw4896s 阅读(717) 评论(0) 推荐(0) 编辑
摘要: 第一题:题目大意:求满足条件P的N位二进制数的个数。P:该二进制数有至少3个0或者3个1挨在一起。。 N<=20000解题过程:1.一开始直接写了个dfs把表打了出来,不过没发现什么规律,然后就尝试着反过来想,先求出不满足条件P的个数,然后总个数减一下。然后就把2^N-ans输了出来,结果发现是个斐... 阅读全文
posted @ 2014-10-12 08:15 lzw4896s 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 先贴个模板: 1 void gcd(LL a,LL b,LL &d,LL &x,LL &y) 2 { 3 if (!b) 4 { 5 x=1; 6 y=0; 7 d=a; 8 } 9 else10 {11 ... 阅读全文
posted @ 2014-10-07 12:08 lzw4896s 阅读(370) 评论(0) 推荐(1) 编辑
摘要: 第一题:题目描述:有 n 个炸弹,有些炸弹牵了一根单向引线(也就是说引线只有在这一端能被炸弹点燃),只要引爆了这个炸弹,用引线连接的下一个炸弹也会爆炸。每个炸弹还有个得分,当这个炸弹被引爆后就能得到相应得分。现在要你引爆 k 个炸弹,使得得分最大。解题过程:1.一开始想到算出每个入度为0的点打掉之后... 阅读全文
posted @ 2014-10-04 18:16 lzw4896s 阅读(343) 评论(0) 推荐(0) 编辑
摘要: 第一题:题目大意:梦幻城市每年为全市高中生兴办一次运动会。为促使各校同学之间的交流,采用特别的分队方式:每一个学校的同学,必须被均匀分散到各队,使得每一队中该校的人数皆相同。为增加比赛的竞争性,希望分成越多队越好。你的任务是由各校的人数决定最多可以分成的队数。解题过程:1.直接求所有数的最大公约数即... 阅读全文
posted @ 2014-10-03 12:42 lzw4896s 阅读(292) 评论(1) 推荐(0) 编辑
摘要: 第一题:题目大意:多重背包。解题过程:1.二进制拆分。最慢的点0.5s。2.单调队列优化会更快,不过我不会。。第二题:题目描述:给定一个n×m的矩阵,记录左上角为(1,1),右下角为(n,m),现在从(1,1)开始取数,每次只能向下或向右移动一个单位,最终到达(n,m),我们把路径上所有的数相乘,结... 阅读全文
posted @ 2014-10-02 12:28 lzw4896s 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 第一题:题目大意:给出数轴上N棵树的坐标和高度,如果两棵树之间的距离小于其中一颗树的高度,那么就有树会被挡住。因此要把一些树砍矮一点。求砍树的总高度最小值。N=2的时候 , F[i][j][0]=F[i-1][j-1][0]-cost[i] ; F[i][j][1]=F[i-1][j-1][1]-c... 阅读全文
posted @ 2014-10-01 23:06 lzw4896s 阅读(678) 评论(0) 推荐(1) 编辑
摘要: 第一题:题目大意:50*50的格子里玩贪吃蛇。给出N步扭头的操作,判断贪吃蛇会在第几步挂掉。(蛇初始向东)解题过程:1.一开始的方法是:为了加快速度,只保存头和尾的坐标,然后保存尾巴的方向,每次move先头运动,然后尾巴按照之前的方向运动直到需要改变方向(继续按之前的方向运动将撞到墙壁或者走到一个m... 阅读全文
posted @ 2014-10-01 21:59 lzw4896s 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 第一题:设 S(N)表示 N 的各位数字之和,如 S(484)=4+8+4=16,S(22)=2+2=4。如果一个正整数 x满足 S(x*x)=S(x)*S(x),我们称 x 为 Rabbit Number。比方说,22 就是一个 Rabbit Number,因为 S(484)=S(22)*S(22... 阅读全文
posted @ 2014-09-27 15:37 lzw4896s 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 第一题:有 N 个人顺时针围在一圆桌上开会,他们对身高很敏感。 因此决定想使得任意相邻的两人的身高差距最大值最小。 如果答案不唯一,输出字典序最小的排列,指的是身高的排列。N<=50解题过程:1.最大值最小的问题直接想到二分答案。。然后就变成判断环的问题,但是想不到什么好的算法,就直接爆搜了。。事实... 阅读全文
posted @ 2014-09-27 08:16 lzw4896s 阅读(537) 评论(0) 推荐(0) 编辑
摘要: 第一题:题目大意:给出1~n的一个排列,统计该排列有多少个长度为奇数的连续子序列的中位数是b。中位数是指把所有元素从小到大排列后,位于中间的数。 N1,则你必须先敲掉第i-1层的第j和第j+1块砖。你现在可以敲掉最多m块砖,求得分最多能有多少。 1≤n≤50,1≤m≤500解题过程:1.考虑到某块砖... 阅读全文
posted @ 2014-09-21 11:05 lzw4896s 阅读(273) 评论(0) 推荐(0) 编辑
摘要: 第一题:题目大意:解一元一次方程(只有+-符号);解题过程:直接处理处两边的x的系数和常数项,字符串的处理即可。第二题:题目大意:求逆序对数。解题过程:直接归并排序。第三题:题目大意:多重背包。每件物品数较多。解题过程:二进制拆分物品数。。 阅读全文
posted @ 2014-09-21 10:30 lzw4896s 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 题目描述:为了维持农场的运转,约翰必须打工赚钱。他接到了N份工作,每份工作恰好占用他一天的时间。约翰从第一天开始工作,他可以任意安排这些工作的顺序,第i份工作有Pi的报酬,但必须在第Di天结束之前完成。在截止日期后完成的工作没有报酬。请帮助约翰规划每天的工作,使得他赚到的钱最多。1≤N≤105, 1... 阅读全文
posted @ 2014-09-20 07:52 lzw4896s 阅读(402) 评论(0) 推荐(1) 编辑
摘要: 第一题:题目描述:有一个无穷序列如下:110100100010000100000…请你找出这个无穷序列中指定位置上的数字解题过程:1.考虑到1的数目比0少的多,就从1的位置的规律开始分析。前几项1的位置是 1,2,4,7,11,16.可以发现 An=An-1+n-1 .用点数列的知识可以求出通项公式... 阅读全文
posted @ 2014-09-19 20:34 lzw4896s 阅读(304) 评论(0) 推荐(0) 编辑
摘要: 第一题:题目大意:(难以概括,就不贴了把。)解题过程:1.担心被精度问题恶心,就把平均数的地方乘了N,这样只有最后计算的时候才会是小数。。2.数组保存的时候蛋疼的没改成double。结果全部WA了。初始得分0分。第二题:题目大意:给出N件衣服的湿度,然后单位时间里衣服的湿度自然会减少A,单位时间里还... 阅读全文
posted @ 2014-09-19 19:37 lzw4896s 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 第一题:题目描述:一个数列定义如下:f(1) = 1,f(2) = 1,f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7。给定 A,B 和 n 的值,要求计算 f(n)的值。(1≤ A, B ≤1000, 1 ≤n≤100,000,000)。解题过程:1.方法一:... 阅读全文
posted @ 2014-09-19 18:32 lzw4896s 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 题目描述:贝西去科罗拉多州去滑雪,不过还她不太会玩,只是个能力为 1 的渣渣。贝西从 0 时刻进入滑雪场,一到 T 时刻就必须离开。滑雪场里有 N 条斜坡,第 i 条斜坡滑行一次需要 Di 分钟,要求游客的能力达到 Ci 或以上时才能进入。贝西决心参加一些滑雪课程以提高自己的素质,这样可以在有限的时... 阅读全文
posted @ 2014-09-17 18:44 lzw4896s 阅读(539) 评论(5) 推荐(0) 编辑
摘要: 题目描述:中国古代的历史故事“田忌赛马”是为大家所熟知的。话说齐王和田忌又要赛马了,他们各派出N匹马,每场比赛,输的一方将要给赢的一方200两黄金,如果是平局的话,双方都不必拿出钱。现在每匹马的速度值是固定而且已知的,而齐王出马也不管田忌的出马顺序。请问田忌该如何安排自己的马去对抗齐王的马,才能赢取... 阅读全文
posted @ 2014-09-16 19:16 lzw4896s 阅读(469) 评论(0) 推荐(0) 编辑
摘要: 转载http://www.cnblogs.com/tiankonguse/archive/2012/07/29/2613877.html问题描述:对于任何正整数x,起约数的个数记做g(x).例如g(1)=1,g(6)=4.定义:如果某个正整数x满足:对于任意i(0求约数最多的数(约数同样多取数值小的... 阅读全文
posted @ 2014-09-15 20:38 lzw4896s 阅读(475) 评论(1) 推荐(0) 编辑
摘要: 原文:http://www.tuicool.com/articles/N7jQV321.DFS预处理出所有节点的深度和父节点inline void dfs(int u){ int i; for(i=head[u];i!=-1;i=next[i]) { if (!deep[to[i... 阅读全文
posted @ 2014-09-13 12:33 lzw4896s 阅读(267) 评论(1) 推荐(0) 编辑
摘要: 第一题:题目描述:在一个长方形框子里,最多有 N(0≤N≤6)个相异的点。在其中任何~个点上放一个很小的油滴,那么这个油滴会一直扩展,直到接触到其他油滴或者框子的边界。必须等一个油滴扩展完毕才能放置下一个油滴。那么应该按照怎样的顺序在这 N 个点上放置油滴,才能使放置完毕后所有油滴占据的总面积最大呢... 阅读全文
posted @ 2014-09-12 22:40 lzw4896s 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 1.有两个数p,q,且gcd(q,p)=1,则最大无法表示成px+qy(x>=0,y>=0)的数是pq-q-p(对于n>pq-q-p,都可以表示成px+qy;而pq-q-p,就无法表示成px+qy)。2.皮克定理说明了顶点是整点的多边形面积S和内部格点数目a、边上格点数目b的关系:S = a + b... 阅读全文
posted @ 2014-09-12 19:52 lzw4896s 阅读(514) 评论(0) 推荐(0) 编辑