
背包
文章平均质量分 74
做不完的ACM
加油,努力
展开
-
Codeforces946D Timetable
题目链接: http://codeforces.com/contest/946/problem/D题意:给出n个长度为m的01串,可将最多k个01串删除,之后每个串权值为最前和最后的1出现的距离。比如010010为4,010为1,000为0题解:单独预处理每个串用0~k个可以减去距离的最大值,显然删除ki个一定是从左找KiL个,从右找KiR个,相加为ki, 预处理后了。dp[i][j]表示前i个串...原创 2018-03-07 17:13:58 · 314 阅读 · 0 评论 -
bitset复习
题目:求子集的算术和的异或和题解:按照正常思路是维护一个dp[i],表示和为i的组合有多少个,然后如果dp[i]%2==1则ans^i就可以了··然而复杂度为sum*n,果断T考虑用一个布尔数组表示dp[i],dp[i]为1表示和为i的组合的数量为奇数,0为偶数然后每输入一个数x,可以用dp[i]更新dp[i+x],即dp[i+x]=(dp[i+x]+dp[i])%2,既然我们用的是布尔数组,可以...原创 2018-03-08 00:38:58 · 167 阅读 · 0 评论 -
Codeforces 365D 贪心+dp
D. Free Markettime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputJohn Doe ...原创 2018-03-15 23:35:57 · 293 阅读 · 0 评论 -
背包方案数DP
有两种货币。n1种货币每种任意取,n2种货币每种只能取1个。求组合成m的方案数。#include <bits/stdc++.h>using namespace std;const int N = 1E5 + 7;const int MOD = 1E9 + 7;typedef long long ll;int dp1[N];int dp2[N];int n1, n2, m...原创 2018-04-16 20:47:14 · 245 阅读 · 0 评论 -
Codeforces981E
题目链接:http://codeforces.com/contest/981/problem/E题意:给出若干个操作,问任意选出这些操作的子集,最大值的在1-n的有多少种可能。题解:那就是我其实只需要最后去看一下能否凑成即可 不需要考虑是否是最大 因为在选择的时候我们可以任选子集 可以尝试 好一个数通过好多次加法之后他不是最大的 那么一定构造不出。直接在线段树是跑bitset即可,复杂度(N*Lo...原创 2018-06-01 00:59:58 · 413 阅读 · 0 评论 -
完全背包方案数DP
学习的网址:https://www.cnblogs.com/france/p/4808751.html链接:https://www.nowcoder.com/acm/contest/128/A来源:牛客网 题目描述 如果不想读故事的話,可以直接跳到最后一段... 大一开学第一天,在学校的超市里,我遇见了她——那个站在摆满饼干的架子前蓝色裙子的长发女孩,她微微俯下身...原创 2018-07-17 16:33:26 · 1211 阅读 · 2 评论