数学【p1412】 经营与开发(秦九韶算法)
顾z
你没有发现两个字里的blog都不一样嘛 qwq
题目描述-->P1412 经营与开发
分析
虽然看到\(Rank_1\)已经有了解释.
但我认为我能BB的更好
我还是决定来写一篇题解. qwq
列式
根据题意,我们很容易列出式子.(瞎j8写.
(变量名与题目描述相同.
\(a_1 \times w+ (1-0.01 \times k)\times w \times a_2+(1-0.01 \times k)\times w\times(1-0.01\times k)\times a_3+\dots\)
其中\((1-0.01 \times k)\times w\)代表新的能力值.
提取公因式\(w\). (是叫公因式还是公因子?,qwq
新式子
\(w\times[a_1+ (1-0.01 \times k) \times a_2+(1-0.01 \times k)\times(1-0.01\times k)\times a_3+\dots]\)
然后又可以写成这种形式.
\(w\times[a_1+ (1-0.01 \times k) \times a_2+(1-0.01 \times k)^2\times a_3+\dots]\)
再将\([]\)中的式子变形(根据秦九韶算法.
得到这样的式子
\(w\times[a_1+ (1-0.01 \times k) \times (a_2+(1-0.01 \times k)\times a_3+\dots)]\)
然后根据秦九韶一直拆下去.
(下面以\(k^{'}\)代表\((1-0.01\times k)\)
所以我们会得到这样的式子.
\(w*[a_1+k^{'}\times(a_2+k{'}\times(a_3+k{'}\times (a_4+\dots)))]\)
然后写出来好长好长一段 qwq.
然后考虑正解为什么是倒着枚举?.
显然,我们从\(1-n\)枚举星球,钻头会受到影响.
即后面的答案会受到影响.(后效性.
而我们从后向前枚举则可以免去这种影响.(感觉这句话自己说的很虚啊.
如果不理解这句话的话,请回想秦九韶算法也是从里到外地求解.
对应到这个题的话我们就相当于从后向前枚举.
因为秦九韶算法的话,从里到外的拆分会乘上\(k^{'}\).(钻头能力值会降低.
简单来讲的话
我们通过一直乘上\(k^{'}\),最里层的式子,对应的就是我们最后一次使用钻头的情况.
同样,次里层的式子,对应的就是我们倒数第二次使用钻头的情况.
(无法正确组织语言. qwq.
如果不懂的话还是用笔试一下.
这样我们模拟的就是这个从里向外求解的过程.
所以我们求出来的一定会是我们的答案.
------------------代码-------------------
#include<bits/stdc++.h>
#define R register
using namespace std;
int n;
double k,c,w;
struct cod{int idx;double cost;}type[100008];
double ans;
int main()
{
scanf("%d%lf%lf%lf",&n,&k,&c,&w);
k=1-0.01*k;c=1+0.01*c;//我说我式子一开始带错了你信不信 qwq.
for(R int i=1;i<=n;i++)
scanf("%d%lf",&type[i].idx,&type[i].cost);
for(R int i=n;i>=1;i--)
if(type[i].idx==1)ans=max(ans,ans*k+type[i].cost);
else ans=max(ans,ans*c-type[i].cost);
printf("%.2lf",ans*w);
}
数学【p1412】 经营与开发(秦九韶算法)的更多相关文章
- 洛谷 P1412 经营与开发 解题报告
P1412 经营与开发 题目描述 \(4X\)概念体系,是指在\(PC\)战略游戏中一种相当普及和成熟的系统概念,得名自4个同样以"\(EX\)"为开头的英语单词. \(eXplo ...
- P1412 经营与开发
题目描述 4X概念体系,是指在PC战略游戏中一种相当普及和成熟的系统概念,得名自4个同样以“EX”为开头的英语单词. eXplore(探索) eXpand(拓张与发展) eXploit(经营与开发) ...
- luogu P1412 经营与开发 |dp
题目描述 4X概念体系,是指在PC战略游戏中一种相当普及和成熟的系统概念,得名自4个同样以"EX"为开头的英语单词. eXplore(探索) eXpand(拓张与发展) eXplo ...
- 洛谷 P1412 经营与开发
/* 粘一下开始写的暴力吧 虽然没啥价值 */ #include<iostream> #include<cstdio> #include<cstring> #inc ...
- 洛谷P1412 经营与开发题解
题目链接QWQ这里就不阐述了: 题解部分: 从题面上来看,这是个dp(递推)的题目. 但是dp要满足无后效性,但这个题为了取最值,得考虑从当前开始一直持续到结束的p的影响. 这让我们怎么满足无后效性? ...
- 落谷 P1412 经营与开发
题目链接 Solution 用传统的思想考虑正推,发现后面的答案依赖于当前的 \(p\),你不但要记录前 \(i\) 个还要记录 \(p\),显然空间爆炸. 类似 AcWing 300. 任务安排1, ...
- HUSTOJ:5500 && 洛谷:P1412:经营与开发
题目描述 4X概念体系,是指在PC战略游戏中一种相当普及和成熟的系统概念,得名自4个同样以“EX”为开头的英语单词.eXplore(探索)eXpand(拓张与发展)eXploit(经营与开发)eXte ...
- 【贪心】经营与开发 @upc_exam_5500
目录 经营与开发 @upc_exam_5500 PROBLEM 题目描述 输入 输出 样例输入 样例输出 提示 SOLUTION CODE 经营与开发 @upc_exam_5500 PROBLEM 题 ...
- 基于SageMath的数学网站——本科毕业开发项目
1 绪论 1.1研究背景 我国是一个拥有15亿人口的大国.其中,据2017年的统计,全国共有大学生2600万左右.如此数量众多的大学生,都会有着学习基础数理课程的需求.而在高校的数学教学中,教授最多最 ...
随机推荐
- 每天一个Linux命令(3):ls命令
ls命令用来显示目标列表,在Linux中是使用率较高的命令.ls命令的输出信息可以进行彩色加亮显示,以分区不同类型的文件. 语法 ls(选项)(参数) 选项 -a:显示所有档案及目录(ls内定将档案名 ...
- C#共享内存
百度:C#共享内存. 文章:C# .Net 多进程同步 通信 共享内存 内存映射文件 Memory Mapped 转 资料:UnmanagedMemoryAccessor 资料:MemoryMappe ...
- Mifare简介
Mifare简介 MIFARE是NXP的知名品牌,是一个应用广泛的非接触式IC产品(13.56MHz非接触性辨识技术),一个典型的通信距离为10厘米,在全球有40多个不同的应用领域.有2.6亿个读写器 ...
- easyUI tree jQuery
Tree 数据转换 所有节点都包含以下属性: id:节点id,这个很重要到加载远程服务器数据 which is important to load remote data text: 显示的节点文本 ...
- JAVA 基础开发环境 vscode 搭建 Windows下VSCode编译运行简单java
JAVA 基础开发环境 vscode 搭建 来源 https://www.cnblogs.com/freewsf/p/7744728.html 对于使用 Visual Studio Code 的 Ja ...
- [洛谷P3810]【模板】三维偏序(陌上花开)
题目大意:有$n$个元素,第$i$个元素有三个属性$a_i,b_i,c_i$,设$f(i)=\sum\limits_{i\not = j}[a_j\leqslant a_i,b_j\leqslant ...
- 省选算法学习-BSGS与exBSGS与二次剩余
前置知识 扩展欧几里得,快速幂 都是很基础的东西 扩展欧几里得 说实话这个东西我学了好几遍都没有懂,最近终于搞明白,可以考场现推了,故放到这里来加深印象 翡蜀定理 方程$ax+by=gcd(a,b)$ ...
- POJ A Simple Problem with Integers | 线段树基础练习
#include<cstdio> #include<algorithm> #include<cstring> typedef long long ll; #defi ...
- Linux系统—— core 文件
Linux core 文件介绍 1. core文件的简单介绍 在一个程序崩溃时,它一般会在指定目录下生成一个core文件.core文件仅仅是一个内存映象(同时加上调试信息),主要是用来调试的. 2. ...
- jquery字数限制超出显示...,原有内容在title中显示
为标签添加class = sliceFont:添加data-num属性为要显示的字数,截取后会在title中显示原有字符串: $('.sliceFont').each(function(index, ...