- 博客(10)
- 收藏
- 关注
原创 HDU 1059 Dividing(多重背包 , 二进制优化形成01背包)
题目链接: 1059 Dividing题意: 有6个物品,一个物品的价值=该物品的编号i (1-6),给定每个物品的数量,问,是否能将所有物品分成价值相等的两堆?解法: 多重背包,将价值当作背包承受量,物品数量当作价值.#include<stdio.h>#include<string.h>int a[7];int f[120005];int v,k;void ZeroOnePack(
2017-09-29 16:29:17 358
原创 HDU Bone Collector (01背包,裸题)
题目链接Bone Collector题意: 给定n, v . 表示有n个物品, 和一个最大承重为v的背包,给出n个物品,每个物品的价值和重量. 问这个背包最多获得多少价值解法: 01背包,裸题#include<bits/stdc++.h>#define rep(i,a,b) for(int i=a; i<=b; ++i)#define repp(i,a,b) for(int i=b;
2017-09-29 14:44:19 345
原创 HDU 1025 Constructing Roads In JGShining's Kingdom (简单dp, 最长上升子序列LIS)
题目链接 : Constructing Roads In JGShining’s Kingdom题意: 有rich city和poor city 两种,分别有n个,编号均为1-n, 一个poor city只会与一个rich city连接,两种city的布局(连边不允许交叉如下 从左到右,均为编号为1-n. 给定边(poor city 连接 rich city),问在不相交的情况下能连接几条
2017-09-28 15:10:38 324
原创 2015-2016 Northwestern European Regional Contest (NWERC 2015) E. Elementary Math
题目链接: 2015-2016 Northwestern European Regional Contest (NWERC 2015) E. Elementary Math 题意: 给定n, 以及n对(a, b), 每对(a, b) 均有三个操作(a*b, a+b, a-b). 给每一对选择一个操作使得任意两对的计算结果均不相同. 解析: 求离散化后,建边(将(a,b)
2017-09-28 12:20:38 440
原创 codeforces Manthan, Codefest 17 B.Marvolo Gaunt's Ring (简单dp)
题目链接: B.Marvolo Gaunt’s Ring题意: 给出n, p, q, r给出n个数, a[i]求p * a[i] + q * a[j] + r * [k] 的最大值 ( 1<=i<=j<=k<=n)解法: 限制条件i<=j<=kp*a[i] => 作为起点q*a[j] => 与 max( p * a[i] ) (i<=j) 相加r*a[k] => 与 max (
2017-09-28 10:53:58 361
原创 边存储 - 前向星(结构体存边)
#include<bits/stdc++.h>#define rep(i, a, b) for(int i=a; i<=b; ++i)#define repp(i, a, b) for(int i=b; i>=a; --i)using namespace std;const int maxn = 1e4+5;struct edge{ int to, next;}node[maxn
2017-09-26 19:49:28 604
原创 HDU 1024 Max Sum Plus Plus (dp, 降维)
题目链接: HDU 1024 Max Sum Plus Plus题意: - 给出n个数, 取其中不相交的m个连续序列的累加和,问最大值为多少构造dp方程最直观的方程: dp[i][j] = MAX( dp[i-1][j]+a[i], dp[k][j-1]+a[i]) ( 1<=k < i )其中dp[i][j]表示,在必须取第i个数的前提下,将前i个数分成j段的最大值数据范围n->
2017-09-26 19:23:56 269
原创 HDU 1011 Starship Troopers (树形DP, 简单题目)
Problem Description题目链接: HDU 1011 Starship Troopers题意:副本: 有n个room, 每个room 都有a个怪物, b点经验值, 每个room之间为双向边, 构成一颗树(仅有n-1条边)你: 拥有m个士兵, 一个士兵可以打20个怪物限制: 要拿下某个room的b点经验,必须留下x个士兵将所有的怪物消灭,必须将当前room中所有怪物清除掉才能进
2017-09-26 17:08:35 304
原创 HDU 6185 Covering (2017 广西邀请赛重现赛)(矩阵快速幂)
HDU 6185 Covering (2017 广西邀请赛重现赛)(矩阵快速幂)
2017-09-01 15:32:10 1217
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人