随笔分类 - dp
摘要:Coins HDU - 2844 POJ - 1742 多重背包可行性 当做一般多重背包,二进制优化 二进制优化+bitset压位 可以转换成完全背包 http://blog.csdn.net/ac_hell/article/details/51394432 (仅做记录)④对于朴素的方法,这个算法每
        阅读全文
                
摘要:先把主件拆开。例如两个附件的物品,拆成只买主件、主+附1、主+附2、主+附1+附2这四种对于这个物品的选法。 然后跑类似普通背包的,ans[i][j]表示前i个物品用j的钱的最大收益。如果当前物品为附件则ans[i]直接从ans[i-1]复制,直接忽略当前物品。否则枚举当前物品的所有选法,ans[i
        阅读全文
                
摘要:Tian Ji -- The Horse Racing HDU - 1052 (有平局的田忌赛马,田忌赢一次得200块,输一次输掉200块,平局不得钱不输钱,要使得田忌得到最多(如果只能输就输的最少)) 首先,实际是要求两人马的配对关系。那么不妨设齐王是按从快到慢的顺序出马的。因此先将齐王的马排序。
        阅读全文
                
摘要:Monkey Banana Problem LightOJ - 1004 错误记录: 1.数组开小2.每组数据数组没有清空 错误记录: 1.数组开小2.每组数据数组没有清空
        阅读全文
                
摘要:https://vjudge.net/problem/LightOJ-1005 题意:在n*n的矩形上放k个车,使得它们不能互相攻击,求方案数。 ans[i][j]表示在i*i的矩形上放j个车的方案数。 那么,首先要在(i-1)*(i-1)的矩形上放j-1个,再在比(i-1)*(i-1)多出来的一行
        阅读全文
                
摘要:Brush (III) LightOJ - 1017 题意:有一些点,每刷一次可以将纵坐标在区间(y1,y1+w)范围内的所有点刷光,y1为任何实数。最多能刷k次,求最多共能刷掉几个点。 先将点按照纵坐标从小到大排序。 显然,横坐标没有任何作用。记p[i]为排序后第i个点的纵坐标。 显然,每一次以某
        阅读全文
                
摘要:A Refining Company LightOJ - 1036 描述好长啊... 题意:在m*n的矩阵上,每一格摆一个向上或者向左的传送带(不能同时摆,只能摆一个)。同时,每一格有两种物资Uranium和Radium。会给出两个矩阵,分别表明每一格Uranium和Radium的数量。每一种物资可
        阅读全文
                
摘要:题意:类似传纸条 方法: 把他要求的操作(一个人来回),转化为两个人同时走,除了开始和结束位置只能走不同路,得到的分数和的最大值即可。 一开始想到要定义的状态,是两个人的x(行)和y(列)坐标。这样时间和空间都为$O(n^4)$,都超出了,因此需要优化。注意到每个人从起点到终点的总步数一定是相同的,
        阅读全文
                
摘要:New Land LightOJ - 1424 题意:找出01矩阵中最大的完全由0组成的矩阵。 方法: 重点在于转化。 先预处理(i,j)点向上最长能取到的连续的全0条的长度。然后枚举某一行作为矩阵的最下面一行,就可以把题目转化为LOJ-1083。用那道题的任意一种方法做即可。
        阅读全文
                
摘要:Histogram LightOJ - 1083 题意:给出一个直方图,由n个长条组成,它们的x轴上坐标分别为1-n,读入n之后读入的一行中,第i个表示x轴上坐标为i的长条长度。求直方图最大的正方形面积。 方法: 核心是求出每个长条向左右可以"扩展"的最大长度。 法一:单调栈 将n个元素的编号依次入
        阅读全文
                
摘要:最长上升子序列O(n log n):http://www.cnblogs.com/hehe54321/p/cf-340d.html 题目:https://cn.vjudge.net/problem/ZOJ-2319 https://cn.vjudge.net/problem/SGU-199 题意:给
        阅读全文
                
摘要:Bubble Sort Graph CodeForces - 340D 题意: 给出一个n个数的数列,建一个只有n个结点没有边的无向图,对数列进行冒泡排序,每交换一对位置在(i,j)的数在点i和点j间连一条边。排序完后,求得到图的最大独立集。 解释: 最初想到的是图的最大独立集,认为不能解,于是就没
        阅读全文
                
摘要:Arthur and Table CodeForces - 557C 首先,按长度排序。 长度为p的桌腿有a[p]个。 要使得长度为p的桌腿为最长,那么要按照代价从小到大砍掉sum{长度不到p的腿的数量}-a[p]+1条腿。还需要将所有长于p的桌腿砍光。枚举p即可。 要点(看了题解才明白):可以通过
        阅读全文
                
摘要:Array Queries CodeForces - 797E 题意:给出一个序列a[1],...,a[n](其中数不超过n)和q个查询,对于每个查询(p,k),每次操作将p变为p+a[p]+k,要求对于每个查询输出将p变为大于n的数所需操作数。 WATLERE之路:分析: 很显然的一道dp题,如果
        阅读全文
                
摘要:题目 ans[i][j]表示由原串第i个字符到第j个字符组成的子串的最短折叠长度如果从i到j本身可以折叠,长度就是本身长度或折叠后的长度的最小值***此处参考:http://blog.csdn.net/a197p/article/details/48701227(自己只能想到去掉左边或右边字母,这样
        阅读全文
                
摘要:UVA - 1629 ans[t][b][l][r]表示t到b行,l到r列那一块蛋糕切好的最小值d[t][b][l][r]表示t到b行,l到r列区域的樱桃数,需要预处理
        阅读全文
                
摘要:题目 条形码是一种由亮条(Light Bar)和暗条(Dark Bar)交替出现且以暗条为起头的符号,每条都占有若干个单位宽。图33-1给出了一个含有4个条的条形码,它延续了1+2+3+1=7单位的宽。 一般情况下BC(N,K,M)是一个包含所有由K个条,总宽度正好为N个单位,每个条的宽度至为M个单
        阅读全文
                
摘要:度度熊与邪恶大魔王 Accepts: 3021 Submissions: 18787 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Problem Description 度度熊为了拯
        阅读全文
                
摘要:P1060 开心的金明 ans[i][j]表示前i件物品用j元时最大结果 则ans[i][j]=max(ans[i-1][j-v[i]+v[i]*w[i],ans[i-1][j]) 显然,ans[i][j]只会用到ans[i-1][p](j-v[i]<=p<=j) 可依据此降掉一维: ans[j]=
        阅读全文
                

 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号