动态规划之背包DP
等我学会后缀自动机
侠影之谜
展开
-
CodeForces 214D Numbers (DP+组合数学+前导零的细节)
#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#define rep(x,y,z) for(int (x)=(y);(x)<(z);(x)++)#define ll long long#define lrt int l,int r,int rt#define lson l,m...原创 2020-04-19 19:33:37 · 195 阅读 · 0 评论 -
CodeForces 284E Coin Troubles (DP+判环+背包)
#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#define rep(x,y,z) for(int (x)=(y);(x)<(z);(x)++)#define ll long long#define lrt int l,int r,int rt#define lson l,m...原创 2020-04-12 20:52:16 · 193 阅读 · 0 评论 -
HDU 5501 The Highest Mark (贪心+背包DP)*
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5501#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#define rep(x,y,z) for(int (x)=(y);(x)<(z);(x)++)#define ll lon...原创 2018-10-18 12:31:41 · 147 阅读 · 0 评论 -
HDU 6125 Free from square (状压+背包思想)*
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6125#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#define rep(x,y,z) for(int (x)=(y);(x)<(z);(x)++)#define ll lon...原创 2018-10-28 13:04:26 · 169 阅读 · 0 评论 -
HDU 4672 Present Day, Present Time (博弈+背包)*
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4672#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#define rep(x,y,z) for(int (x)=(y);(x)<(z);(x)++)#define ll lon...原创 2018-10-26 15:07:39 · 229 阅读 · 0 评论 -
HDU 6149 Valley Numer II (背包+状压+滚动数组)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6149#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#define rep(x,y,z) for(int (x)=(y);(x)<(z);(x)++)#define ll lon...原创 2018-10-26 20:13:40 · 115 阅读 · 0 评论 -
HDU 5800 To My Girlfriend (背包变形)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5800#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#define rep(x,y,z) for(int (x)=(y);(x)<(z);(x)++)#define ll lon...原创 2019-02-02 16:25:21 · 187 阅读 · 0 评论 -
HDU 2082 找单词 (暴力背包)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2082#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#define rep(x,y,z) for(int (x)=(y);(x)<(z);(x)++)#define ll lon...原创 2019-02-09 23:49:56 · 100 阅读 · 0 评论 -
CodeCraft-19 and Codeforces Round #537 (Div. 2) D. Destroy the Colony(组合数学+退背包)
题目链接:http://codeforces.com/contest/1111/problem/D题目大意:这道题题目意思比较模糊。给定一个字符串,不同字符代表不同种类的坏人,现在给定若干个询问,每个询问给两个下标,要求把给定位置上的两个(或一个)类型的人放到同一边,并且其他相同种类的人均在同一边的方案数。题目分析: 首先考虑不加限制的计数方案,就是说不考...原创 2019-02-23 18:01:26 · 250 阅读 · 0 评论 -
Educational Codeforces Round 61 (Rated for Div. 2) E. Knapsack(思维优化背包)好题
题目链接:http://codeforces.com/contest/1132/problem/E题目大意给定八种物品每种物品价值为i,(1~8),然后给定一个w,问能达到的不大于w的值最大值是多少。w和物品个数都非常大。题目分析比较神仙的一道背包题目吧算是,我是看了题解才有想法的。对于1到8,其单独取都可以凑成840(取八个数最小公倍数)就是说假定答案是cnt1...原创 2019-03-28 06:57:38 · 252 阅读 · 0 评论 -
Gym 100694A Did he drop any good loot? (背包变形+细节考虑)
题目链接:http://codeforces.com/gym/100694/problem/A题目大意给定n个物品和一个容量m,每个物品有三个属性,价值,容量,和可增益的容量.在你选择的物品中你可以至多利用两个物品的增益属性来扩大容量.问最大价值可以是多少.题目分析就是背包变下形.我们可以把一个物品其本身容量减去增益容量这个值当作一个新的容量值,当然会有负数,我们...原创 2019-04-10 23:11:55 · 175 阅读 · 0 评论 -
Codeforces Round #552 (Div. 3)F Shovels Shop (前缀和+背包DP)
题目链接:http://codeforces.com/contest/1154题目大意给定n个东西的价值,有m种优惠方式,每种是个二元组,表示恰好买x个数可以免费y个最便宜的,问恰好买k个物品的最小花费是多少.题目分析由于k数据范围很小,我们从k这个维度思考.首先贪心的把商品按价值排序,然后把每种决策用一维数组映射出来,明显对于一样的x我们选y最...原创 2019-05-01 22:15:19 · 130 阅读 · 0 评论 -
CodeForces 687C The Values You Can Make (01背包二维容量空间)
题目大意给定一个序列,和一个k,如果有个子集和可以组成k,那么把子集中所有的可以通过这个子集可表示出来的数数出来,按序.题目分析这道题我是没想到的.....考虑把每个序列的一个数当成背包来影响目标空间,那么思考如何构造这个目标空间.一个数能否被得到,要取决与是否有子集可以通过普通dp的方式得到.令dp(i,j)表示,组成i的子集是否可以组成j.那...原创 2019-05-05 13:05:21 · 92 阅读 · 0 评论 -
uva 10280 Old Wine Into New Bottles(完全背包+剪枝)*
题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1221#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#...原创 2018-09-29 15:13:03 · 212 阅读 · 0 评论 -
UVA 10306 e-Coins (二维背包)
题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1247#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#...原创 2018-09-29 07:54:12 · 152 阅读 · 0 评论 -
HDU - 4640 Island and study-sister (状压DP+背包+最短路)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4640#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#define rep(x,y,z) for(int (x)=(y);(x)<(z);(x)++)#define read(x...原创 2018-10-11 17:11:33 · 616 阅读 · 0 评论 -
Codeforces 837D Round Set (二维背包dp)
Let's call the roundness of the number the number of zeros to which it ends.You have an array of n numbers. You need to choose a subset of exactly k numbers so that the rou...原创 2018-06-26 22:26:31 · 223 阅读 · 0 评论 -
Codeforces 4D Mysterious Present (简单DP +路径打印 最长递增子序列问题)
Peter decided to wish happy birthday to his friend from Australia and send him a card. To make his present more mysterious, he decided to make a chain. Chain here is such a sequence of envelopes A = {...原创 2018-08-10 19:05:45 · 336 阅读 · 0 评论 -
HDU 5534 Partial Tree(膜大佬的。。。完全背包问题+思维)好题
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5534#pragma comment(linker, "/STACK:102400000,102400000")#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#define rep(x,...原创 2018-09-06 06:07:30 · 132 阅读 · 0 评论 -
ACM-ICPC 2018 焦作赛区网络预赛 Mathematical Curse (简单DP+维护极值)
题目链接:https://nanti.jisuanke.com/t/31711#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#define rep(x,y,z) for(int (x)=(y);(x)<(z);(x)++)#define read(x,y) scanf("%...原创 2018-09-16 08:56:38 · 427 阅读 · 0 评论 -
ACM-ICPC 2018 焦作赛区网络预赛 Transport Ship (多重背包计数+DP水题)
题目链接:https://nanti.jisuanke.com/t/31720#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#define rep(x,y,z) for(int (x)=(y);(x)<(z);(x)++)#define read(x,y) scanf("%...原创 2018-09-16 10:49:02 · 206 阅读 · 0 评论 -
UVA 10465 Homer Simpson (完全背包)
题目链接:https://cn.vjudge.net/contest/255927#problem/G#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#define rep(x,y,z) for(int (x)=(y);(x)<(z);(x)++)#define read(x...原创 2018-09-23 21:52:31 · 268 阅读 · 0 评论 -
UVA 10404 Bachet's Game (简单博弈DP+背包)
题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1345#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#...原创 2018-09-23 23:35:34 · 225 阅读 · 0 评论 -
UVA 11137 Ingenuous Cubrency (背包水题)
题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=2078#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#...原创 2018-09-25 00:11:24 · 155 阅读 · 0 评论 -
UVA 10313 Pay the Price (完全背包问题+读入技巧+细节)*
题目链接:https://cn.vjudge.net/problem/UVA-10313#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#define rep(x,y,z) for(int (x)=(y);(x)<(z);(x)++)#define read(x,y) sca...原创 2018-09-26 00:02:23 · 230 阅读 · 0 评论 -
HDU 4508 湫湫系列故事——减肥记I(完全背包水题)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4508#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#define rep(x,y,z) for(int (x)=(y);(x)<(z);(x)++)#define read(x...原创 2018-09-20 19:36:39 · 226 阅读 · 0 评论 -
UVA - 674 Coin Change(完全背包水题)
题目链接:https://cn.vjudge.net/contest/255547#problem/B#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#define rep(x,y,z) for(int (x)=(y);(x)<(z);(x)++)#define read(x...原创 2018-09-20 19:51:07 · 135 阅读 · 0 评论 -
UVA 147 Dollars (完全背包)
题目链接:https://cn.vjudge.net/problem/UVA-147#include<bits/stdc++.h>using namespace std;#define debug puts("YES");#define rep(x,y,z) for(int (x)=(y);(x)<(z);(x)++)#define read(x,y) scanf...原创 2018-09-20 20:30:08 · 241 阅读 · 0 评论 -
UVA 12563 Jin Ge Jin Qu hao (背包问题之满背包)
(If you smiled when you see the title, this problem is for you ^_^)For those who don’t know KTV, see: http://en.wikipedia.org/wiki/Karaoke_boxThere is one very popular song called Jin Ge Jin Qu(). It ...原创 2018-06-24 15:45:37 · 154 阅读 · 0 评论