洛谷 P1412 经营与开发
- /*
- 粘一下开始写的暴力吧 虽然没啥价值
- */
- #include<iostream>
- #include<cstdio>
- #include<cstring>
- #include<map>
- #define maxn 100010
- using namespace std;
- int n,type[maxn];
- double k,c,w,v[maxn],ans;
- void Dfs(int p,double t,double m)
- {
- if(p==n+)
- {
- ans=max(ans,m);
- return;
- }
- if(type[p]==)Dfs(p+,t*(-double(k/100.0)),m+v[p]*t);
- if(type[p]==)Dfs(p+,t*(+double(c/100.0)),m-v[p]*t);
- Dfs(p+,t,m);
- }
- int main()
- {
- freopen("exploit.in","r",stdin);
- freopen("exploit.out","w",stdout);
- cin>>n>>k>>c>>w;
- for(int i=;i<=n;i++)
- cin>>type[i]>>v[i];
- Dfs(,w,);
- printf("%.2f\n",ans);
- return ;
- }
- /*
- 似乎不是dp题 因为前面的决策影响后面的决策 具有后效性
- 然而他就是dp题 - -
- 正难则反 我们发现后面的决策对前面的没有影响
- 但是显然后面的用到前面的决策来确定钻头能力值
- 我们不先计算出前面的 无法确定后面的能力值
- 仔细看题目的话 我们会发现前面的对后面的影响只是乘一个数值
- 那么我们可以先不乘 反着跑 到了前面在乘
- 对于每一个i 有选或者不选两种情况
- (1)资源型:如果选了 那么金钱数变大 能力值变小 对后面的影响就是能力值*k 然后+钱
- 我们假设每个i的能力值为1*w
- 有 f[i]=max(f[i+1],f[i+1]*k+v[i]*w);
- (2)维修型:如果选了 那么金钱数变小 能力值变大 对后面的影响就是能力值*c 然后-钱
- 同上假设每个i的能力值为1*w
- 有 f[i]=max(f[i+1],f[i+1]*c-v[i]*w);
- 注意并不是得到的f[1]就是最优解 所以对所有的f取大
- */
- #include<iostream>
- #include<cstdio>
- #include<cstring>
- #include<map>
- #define maxn 100010
- using namespace std;
- int n,type[maxn];
- double k,c,w,f[maxn],v[maxn],ans;
- int main()
- {
- cin>>n>>k>>c>>w;
- for(int i=;i<=n;i++)
- cin>>type[i]>>v[i];
- k=(-k)/100.0;c=(+c)/100.0;
- for(int i=n;i>=;i--)
- {
- if(type[i]==)
- f[i]=max(f[i+],f[i+]*k+v[i]*w);
- if(type[i]==)
- f[i]=max(f[i+],f[i+]*c-v[i]*w);
- ans=max(ans,f[i]);
- }
- printf("%.2f\n",ans);
- return ;
- }
洛谷 P1412 经营与开发的更多相关文章
- 洛谷 P1412 经营与开发 解题报告
P1412 经营与开发 题目描述 \(4X\)概念体系,是指在\(PC\)战略游戏中一种相当普及和成熟的系统概念,得名自4个同样以"\(EX\)"为开头的英语单词. \(eXplo ...
- 洛谷P1412 经营与开发题解
题目链接QWQ这里就不阐述了: 题解部分: 从题面上来看,这是个dp(递推)的题目. 但是dp要满足无后效性,但这个题为了取最值,得考虑从当前开始一直持续到结束的p的影响. 这让我们怎么满足无后效性? ...
- 落谷 P1412 经营与开发
题目链接 Solution 用传统的思想考虑正推,发现后面的答案依赖于当前的 \(p\),你不但要记录前 \(i\) 个还要记录 \(p\),显然空间爆炸. 类似 AcWing 300. 任务安排1, ...
- P1412 经营与开发
题目描述 4X概念体系,是指在PC战略游戏中一种相当普及和成熟的系统概念,得名自4个同样以“EX”为开头的英语单词. eXplore(探索) eXpand(拓张与发展) eXploit(经营与开发) ...
- luogu P1412 经营与开发 |dp
题目描述 4X概念体系,是指在PC战略游戏中一种相当普及和成熟的系统概念,得名自4个同样以"EX"为开头的英语单词. eXplore(探索) eXpand(拓张与发展) eXplo ...
- 数学【p1412】 经营与开发(秦九韶算法)
顾z 你没有发现两个字里的blog都不一样嘛 qwq 题目描述-->P1412 经营与开发 分析 虽然看到\(Rank_1\)已经有了解释. 但我认为我能BB的更好 我还是决定来写一篇题解. q ...
- HUSTOJ:5500 && 洛谷:P1412:经营与开发
题目描述 4X概念体系,是指在PC战略游戏中一种相当普及和成熟的系统概念,得名自4个同样以“EX”为开头的英语单词.eXplore(探索)eXpand(拓张与发展)eXploit(经营与开发)eXte ...
- 【洛谷P2584】【ZJOI2006】GameZ游戏排名系统题解
[洛谷P2584][ZJOI2006]GameZ游戏排名系统题解 题目链接 题意: GameZ为他们最新推出的游戏开通了一个网站.世界各地的玩家都可以将自己的游戏得分上传到网站上.这样就可以看到自己在 ...
- 洛谷P3959 [NOIP2017]宝藏
[题目描述] 参与考古挖掘的小明得到了一份藏宝图,藏宝图上标出了 n 个深埋在地下的宝藏屋,也给出了这 n 个宝藏屋之间可供开发的 m 条道路和它们的长度. 小明决心亲自前往挖掘所有宝藏屋中的宝藏.但 ...
随机推荐
- 疯狂学习java web5(SSI框架)
其实前面的所有只是铺垫,目的只是为了了解现有工程是怎样的.之前直接上来就看,看了很久依然是云里雾里,所以不得已学习点基础知识,前面的基础只是蜻蜓点水一带而过,希望能起部分作用了. 发现struct2有 ...
- Java学习----构造方法的重载
一个类中有多个同名的参数不一样(参数的个数,参数的类型,参数的顺序)的构造方法 public class Student { public Student() { System.out.println ...
- 每日一算法【one】
//有一个数组 {1,2,3,4,5,6,7,8,9,12,13,45,67,89,99,101,111,123,134,565,677} 查找数组中是否有指定的某一个数. /** *------- ...
- IIS6中ASP.NET实现对静态文件的授权控制
后台使用html+ashx+js开发 在VS2008调试并未发现问题 发布到IIS6才发现不需要验证也能访问html文件 解决这个问题配置IIS即可了 方法如下: IIS配置:网站->属性-&g ...
- Python实现ID3算法
自己用Python写的数据挖掘中的ID3算法,现在觉得Python是实现算法的最好工具: 先贴出ID3算法的介绍地址http://wenku.baidu.com/view/cddddaed0975f4 ...
- MYSQL主从同步测试
参考: http://www.cnblogs.com/zgx/archive/2011/09/13/2174823.html 注意选建同步用户,其它的都按步就搬. 还有,不要让IPTABLES坏事,开 ...
- Chrome 的 100 个小技巧 中文版
英文原版<100 Tips For Chrome, Chrome OS and ChromeBook Users>作者博客 - chromestory.com 本文是对<100 Ti ...
- Actor模型
Actors模型(Actor model)首先是由Carl Hewitt在1973定义, 由Erlang OTP (Open Telecom Platform) 推广,其 消息传递更加符合面向对象的原 ...
- BZOJ1677: [Usaco2005 Jan]Sumsets 求和
1677: [Usaco2005 Jan]Sumsets 求和 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 570 Solved: 310[Submi ...
- -_-#【模块】getElementsByClassName
if (!document.getElementsByClassName) { document.getElementsByClassNameForMobile = function(search) ...