2018-2019 ACM-ICPC, Asia East Continent Finals I. Misunderstood … Missing(dp)
题目链接:
http://codeforces.com/gym/102056/problem/I
题意:
人物有l两个属性分别是$A,D$
每个回合人物$A\pm D$
每个回合有三个选择分别是:
1,对怪物造成$a_i+A$的伤害
2,$A\pm c_i$
3,$D\pm b_i$
求n回合后对怪物造成的最大伤害
数据范围:
$1 \le n \le 100$
$1\le a_i, b_i, c_i \le 10^9$
分析:
虽然比赛的时候想到了用DP来做也想到了逆序处理,但是一直不知道怎么定义状态。赛后看到题解,瞬间明白。
定义$DP[i][j][k]$,代表在$i$回合,攻击了$j$次,攻击的回合累加是$k$
注意:long long类型的数组不要大于$3\times 10^7$,会超空间
ac代码:
#include<bits/stdc++.h>
#define ll long long
using namespace std;
const int maxn=110;
const int maxm=10000+10;
int a[maxn],b[maxn],c[maxn];
ll dp[2][maxn][maxm];
int main()
{
int T,n;
scanf("%d",&T);
while(T--)
{
scanf("%d",&n);
for(int i=n;i>=1;i--)
scanf("%d %d %d",&a[i],&b[i],&c[i]);
for(int j=0;j<=n;j++)for(int k=0;k<=n*n;k++)dp[1][j][k]=-1e18;
dp[1][1][1]=a[1];
for(int i=2;i<=n;i++)
{
for(int j=0;j<=n;j++)for(int k=0;k<=n*n;k++)
dp[0][j][k]=dp[1][j][k],dp[1][j][k]=-1e18;
for(int j=0;j+1<=n;j++)
for(int k=0;k+i<=n*n;k++)
dp[1][j+1][k+i]=max(dp[1][j+1][k+i],dp[0][j][k]+a[i]);
for(int j=0;j<=n;j++)
for(int k=0;k<=n*n;k++)
dp[1][j][k]=max(dp[1][j][k],dp[0][j][k]+(ll)c[i]*j),
dp[1][j][k]=max(dp[1][j][k],(ll)(i*j-k)*b[i]+dp[0][j][k]);
}
ll ans=0;
for(int i=0;i<=n;i++)
for(int j=0;j<=n*n;j++)
ans=max(dp[1][i][j],ans);
printf("%lld\n",ans);
}
return 0;
}
2018-2019 ACM-ICPC, Asia East Continent Finals I. Misunderstood … Missing(dp)的更多相关文章
- 训练20191009 2018-2019 ACM-ICPC, Asia East Continent Finals
2018-2019 ACM-ICPC, Asia East Continent Finals 总体情况 本次训练共3小时20分钟,通过题数4. 解题报告 D. Deja vu of - Go Play ...
- 2016 ACM/ICPC Asia Regional Shenyang Online 1009/HDU 5900 区间dp
QSC and Master Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) ...
- 2016 ACM/ICPC Asia Regional Shenyang Online 1007/HDU 5898 数位dp
odd-even number Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)T ...
- hdu 5868 2016 ACM/ICPC Asia Regional Dalian Online 1001 (burnside引理 polya定理)
Different Circle Permutation Time Limit: 3000/1500 MS (Java/Others) Memory Limit: 262144/262144 K ...
- 2018-2019 ACM-ICPC, Asia East Continent Finals部分题解
C:显然每p2个数会有一个0循环,其中22 32 52 72的循环会在200个数中出现,找到p2循环的位置就可以知道首位在模p2意义下是多少,并且循环位置几乎是唯一的(对72不满足但可能的位置也很少) ...
- 2018-2019 ACM-ICPC, Asia East Continent Finals Solution
D. Deja vu of … Go Players 签. #include <bits/stdc++.h> using namespace std; int t, n, m; int m ...
- 2019 ACM/ICPC Asia Regional shanxia D Miku and Generals (二分图黑白染色+01背包)
Miku is matchless in the world!” As everyone knows, Nakano Miku is interested in Japanese generals, ...
- 2015 ACM/ICPC Asia Regional Changchun Online Pro 1002 Ponds(拓扑排序+并查集)
Ponds Time Limit: 1500/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Sub ...
- ACM/ICPC 之 DFS求解欧拉通路路径(POJ2337)
判断是欧拉通路后,DFS简单剪枝求解字典序最小的欧拉通路路径 //Time:16Ms Memory:228K #include<iostream> #include<cstring& ...
随机推荐
- 从壹开始前后端分离 [ vue + .netcore 补充教程 ] 二八║ Nuxt 基础:面向源码研究Nuxt.js
前言 哈喽大家周五好,又是一个开开心心的周五了,接下来就是三天小团圆啦,这里先祝大家节日快乐咯,希望都没有加班哈哈,今天公司发了月饼,嗯~时间来不及了,上周应该搞个活动抽中几个粉丝发月饼的,下次吧,这 ...
- MySQL配置参数说明
MYSQL服务器my.cnf配置参数详解: 硬件:内存16G [client] port = 3306 socket = /data/mysql.sock [mysql] no-auto-rehash ...
- .NET Core微服务之服务间的调用方式(REST and RPC)
Tip: 此篇已加入.NET Core微服务基础系列文章索引 一.REST or RPC ? 1.1 REST & RPC 微服务之间的接口调用通常包含两个部分,序列化和通信协议.常见的序列化 ...
- DotNetCore跨平台~Dapper的使用
回到目录 Dapper作为小型ORM的代表作品被我们应用到了dotnet core的项目中,下面将把自己在项目中使用dapper进行curd操作的过程写一下,后期可能会遇到一些问题,大叔也会在这个系列 ...
- Promise来控制JavaScript的异步执行
一般来说,js.html都是按照从上至下这种方式来进行执行的.这就造成了,基本上所有的执行过程都是在一个线程中进行. 我们都知道,ajax的使用大大的提高了前后台的沟通效率,那么有没有什么方式,让js ...
- .NET ClrProfiler ILRewrite 商业级APM原理
Demo:https://github.com/caozhiyuan/ClrProfiler.Trace 背景 为了实现自动.无依赖地跟踪分析应用程序性能(达到商业级APM效果),作者希望能动态修改应 ...
- socket,模拟服务器、客户端通信
服务器代码: using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;u ...
- Java开发笔记(序)章节目录
现将本博客的Java学习文章整理成以下笔记目录,方便查阅. 第一章 初识JavaJava开发笔记(一)第一个Java程序Java开发笔记(二)Java工程的帝国区划Java开发笔记(三)Java帝国的 ...
- 2.python中self详解(程序适用于python3版本)
先介绍下Python中的类和实例面向对象最重要的概念就是类(class)和实例(instance),类(class)是抽象的模板,比如学生这个抽象的事物,可以用一个Student类来表示.而实例是根据 ...
- 修改phpcms中的评论样式
phpcms中自带的评论插件很好用!但是样式个人感觉丑的狠,百度一下也没能找到解决方式,也许是自己的搜索方式不对,于是自己就研究了研究,这里可以使用两种方法进行修改 方法一: 使用PHPCMS中的ge ...