[Usaco2010 Dec]Treasure Chest 藏宝箱
题目链接:点这里
Solution:
刚开始以为是博弈论,然而不是。。。
首先考虑n方dp,设f(l,r)为只有\(l\)到\(r\)区间的钱的先手最大获利
那么我们可以得到式子f(l,r)=sum(l,r)-min(f(l+1,r),f(l,r-1)),代表取左还是右
代码写出来是这样的:
for(int j=2;j<=n;j++)for(int i=j-1;i>=1;i--)f[i][j]=s[j]-s[i-1]-min(f[i+1][j],f[i][j-1]);
不过这道题卡空间,我们可以发现第二维其实可以去掉(相当于滚动数组),然后直接dp
Code:
#include<bits/stdc++.h>
#define ll long long
using namespace std;
const int N=5e3+1;
int n,f[N],s[N];
int read(){int x=0,f=1;char ch=getchar();while(!isdigit(ch)){if(ch=='-')f=-f;ch=getchar();}while(isdigit(ch)){x=x*10+ch-48;ch=getchar();}return x*f;
}
int main(){n=read();for(int i=1;i<=n;i++){f[i]=read();s[i]=s[i-1]+f[i];}for(int j=2;j<=n;j++)for(int i=j-1;i>=1;i--)f[i]=s[j]-s[i-1]-min(f[i+1],f[i]);printf("%d\n",f[1]);return 0;
}
转载于:https://www.cnblogs.com/NLDQY/p/10840088.html
[Usaco2010 Dec]Treasure Chest 藏宝箱相关推荐
- bzoj2101【Usaco2010 Dec】Treasure Chest 藏宝箱
2101: [Usaco2010 Dec]Treasure Chest 藏宝箱 Time Limit: 10 Sec Memory Limit: 64 MB Submit: 418 Solved: ...
- Uva12325 Zombie's Treasure Chest [二分区间+模拟退火]
Zombie's Treasure Chest 题目链接 https://cn.vjudge.net/problem/UVA-12325 题意 两种物品无穷多个,第一种物品重量s1s_1s1,价值v ...
- UVA 12325 宝箱 Zombie‘s Treasure Chest
宝箱 Zombie's Treasure Chest 题面翻译 你有一个体积为N的箱子和两种数量无限的宝物.宝物1的体积为S1,价值为V1::宝物2的体积为S2,价值为V2.输入均为32位带符号整数. ...
- 【BZOJ】2099: [Usaco2010 Dec]Letter 恐吓信
[题意]给定长度为n和m的两个字符串S和T,要求在字符串S中取出若干段拼成T(可重复取),求最小段数,n,m<=50000. [算法]后缀自动机 || 后缀数组 [题解]对串S建SAM,然后在上 ...
- BZOJ2490 Zombie’s Treasure Chest
如果n = lcm(s1, s2),那么就可以直接得到maxV = (v / s1 * v1, v / s2 *v2) 然后还剩下一点体积我们暴力枚举用s1的量,让s1为max(s1, s2)可以减少 ...
- BZOJ——T 2097: [Usaco2010 Dec]Exercise 奶牛健美操
http://www.lydsy.com/JudgeOnline/problem.php?id=2097 Time Limit: 10 Sec Memory Limit: 64 MB Submit: ...
- UVA12325Zombie's Treasure Chest 宝箱
题意:给定两个箱子体积s1,s2,价值v1,v2,给出一个体积为V的宝箱,求可装入的最大价值. 分析:正常写肯定是超时的,把状况简化,第一种,当s1,s2都很小时,就看它们的价值比,v1/s1 ,v2 ...
- [USACO10DEC] Treasure Chest
题目链接 90 Points:智障的区间 DP--设 dp[i][j] 表示区间 [i, j] 能取的最大价值,但我还是 sd 地开了第三维表示先取还是后取的价值. 交上去以为能 A,结果 #2 开心 ...
- BZOJ 2097 [Usaco2010 Dec]Exercise 奶牛健美操
[题意] 给出一棵树.现在可以在树中删去m条边,使它变成m+1棵树.要求最小化树的直径的最大值. [题解] 二分答案.$Check$的时候用$DP$,记录当前节点每个儿子的直径$v[i]$,如果$v[ ...
- UVA - 12325 Zombie's Treasure Chest 暴力
根据两种情况 选择不同枚举 哇! 这题开始用 int 类型的数写的,只有 存最大 价值量的 mix_ 用了long long ,结果交了一遍 wa ,查了一遍 没问题啊?? 后来意识到 max 函数 ...
最新文章
- 这家中国芯片公司年利润追上英伟达了?假的
- 独家 | 探索性文本数据分析的新手教程(Amazon案例研究)
- 207. Course Schedule 210. Course Schedule II
- 一生都要Debug,我们最需要掌握哪些硬技能?
- /scripts/checkkconfigsymbols.sh
- 【项目管理】不确定性绩效域管理
- android studio异步单元测试,在Android Studio中可以进行单元测试
- 自动驾驶中激光雷达如何检测障碍物?
- 基于JAVA+SpringMVC+Mybatis+MYSQL的病例管理系统
- ORACLE索引重建方法与索引的三种状态
- so(3) se(3) optimization
- 谈一谈chrome浏览器使用
- 2022年,GIS专业要不要转战IT?
- 第九届蓝桥杯,赛后感!!含泪写完。
- 电脑桌面云便签怎么绑定和开启微信提醒?
- PWM的基本原理及其应用实例
- 【程序】 一位前辈的编程经历(转)
- (03)_k8s之flannel三种模型安装部署详解
- 70年代生人的80年代
- GNN(一)走进GNN