小奇挖矿

Problem

NOIP模拟赛

Analysis

请先思考后再展开

wo shi sb

考虑每个a的系数,这样就能直接做了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27

#include<algorithm>
#include<cstring>
#include<cmath>
#include<cstdlib>
#include<ctime>
using namespace std;
namespace mine
{
typedef long long ll;

const int MAX_N=1e5+10;
int op[MAX_N],x[MAX_N];
double f[MAX_N];
void ()
{
int n,k,c,w;scanf("%d%d%d%d",&n,&k,&c,&w);
for(int i=1;i<=n;i++) scanf("%d%d",&op[i],&x[i]);
f[n+1]=0;
for(int i=n;i>=1;i--)
{
if(op[i]==1) f[i]=max(f[i+1],f[i+1]*(1-0.01*k)+x[i]);
else f[i]=max(f[i+1],f[i+1]*(1+0.01*c)-x[i]);
}
printf("%.2lf",f[1]*w);
}
}