hdu 4939 Stupid Tower Defense 2014多校七 DP
题目链接:hdu 4939
一个塔防游戏:给定一条长度为n的直线,要在每一个格点都造塔,小怪每走一个格点需要t秒钟,现在提供给你三种塔:(1)非常耿直的红色塔,仅仅当怪物经过该点时造成每秒x点伤害;(2)带诅咒的绿塔,经过该点时不造成伤害,经过之后直到走完全程造成每秒y点伤害(伤害可叠加);(3)塔防中肯定有的减速蓝塔,经过时没有效果,经过之后怪物每走一个格点都需要额外的z秒(减速效果同样可叠加)。问现在造塔能怪物走完全程最大能造成多少伤害。
红色塔太耿直,只有一次作用,而且绿蓝塔对当前经过的怪物没有实际作用,所以在最后一个格点放置的一定是红塔。蓝绿塔的后效足,所以优先放在前面。而它们对于之后点的影响仅仅与他们的数量有关,而与他们的排列顺序无关。(如对第5个格点,之前已经有两个绿塔,两个蓝塔,无论它们的顺序如何,在该点的造成的伤害都是2*y*(t+2z))
因此,我们记录状态dp[i][j]表示对于前i+j个格点有i个绿塔,j个蓝塔在前i+j个格点造成的总的伤害的最大值
状态转移方程:dp[i][j]=max(dp[i-1][j]+(i-1)*y*(t+j*z)+dp[i][j-1]+i*y*(t+(j-1)*z))
/******************************************************* File Name: 1005.cpp* Author: kojimai* Creater Time:2014年08月12日 星期二 13时43分47秒
******************************************************/#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<iostream>
using namespace std;
long long dp[1505][1505];//i-green j-blue
int main()
{int keng,Case=1;long long n,x,y,z,t;scanf("%d",&keng);while(keng--){cin>>n>>x>>y>>z>>t;long long ans=x*t*n;memset(dp,0,sizeof(dp));for(long long i=1;i<=n;i++){for(long long j=0;j<=i;j++){dp[j][i-j]=0;if(j)dp[j][i-j]=max(dp[j][i-j],dp[j-1][i-j]+y*(j-1)*(t+(i-j)*z));if(i-j)dp[j][i-j]=max(dp[j][i-j],dp[j][i-1-j]+y*(j)*(t+(i-j-1)*z));//cout<<j<<' '<<i-j<<' '<<dp[j][i-j]<<endl;ans=max(ans,dp[j][i-j]+(n-i)*(x*(t+z*(i-j))+y*j*(t+(i-j)*z)));//假设之后的全部都是红塔}}printf("Case #%d: ",Case++);cout<<ans<<endl;}return 0;
}
hdu 4939 Stupid Tower Defense 2014多校七 DP相关推荐
- 2014多校联合-第七场
1005: ( Stupid Tower Defense ) 由题意我们很明显可以知道,红色的塔放在最后面是最优的. 假如前i个塔,放j个绿塔,i-j个蓝塔.那么无论前i个塔的顺序怎么放,对后面的塔造 ...
- unity2D塔防游戏资源 Tower Defense 2D v1.3.1
unity2D塔防游戏资源 Tower Defense 2D v1.3.1 包括: - 平铺地图编辑器窗口; - 级别编辑窗口; - 单位和塔编辑窗口; - 主菜单场景; - 级别选择场景; - 3个 ...
- 聋校计算机教学工作总结,2014年年上半年聋校七年级数学教学工作总结
一学期的工作伴随着暑假脚步的到来,即将接近尾声.本学期本人任教的是聋校七年级的数学,在这一学期的教与学中,伴随着有成功也有失败,在忙碌中有收获,圆满的完成了各项任务,现将本学期的点滴感受总结如下: 一 ...
- 2021成都四七九高考成绩查询,2020成都四七九高考战果汇总,三校七区谁最强?绝对出乎你的意料~...
原标题:2020成都四七九高考战果汇总,三校七区谁最强?绝对出乎你的意料~ 作为成都教育的金字招牌,今年四七九高考战果如何?我整理了四七九三校七区的今年出口以及2017年中考收分情况,给大家做个参考. ...
- HDU - 6082——度度熊与邪恶大魔王 (背包+DP)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6082 思路:dp[i][j]代表打死血量为i,防御力为j的怪兽要用的最少晶石.用背包的方式dp. #i ...
- HDU 4864 Task(2014多校--贪心)
Task 比赛当时思路想的差不多,感觉能过的,该处理的也都处理到了,最后还是没过,可能是二分写错了吧-.- 大意:给你n个机器,m个要完成的任务,每个机器跟任务都有两个属性,机器是最大工作时间跟等级, ...
- 2014多校联合四(HDU 4901 HDU 4902 HDU 4905)
HDU 4901 The Romantic Hero 题意: 一串数字a 找一个位置分开 前面为S'后面为T' 从这两个集合中分别选出子集S和T 使得S中元素的"异或"值等 ...
- 2014多校第四场1006 || HDU 4902 Nice boat (线段树 区间更新)
题目链接 题意 : 给你n个初值,然后进行两种操作,第一种操作是将(L,R)这一区间上所有的数变成x,第二种操作是将(L,R)这一区间上所有大于x的数a[i]变成gcd(x,a[i]).输出最后n个数 ...
- hdu 4937 Lucky Number(数学题 进制转换)2014多校训练第7场
Lucky Number Time Limit: 20 ...
- 2014多校第一场A题 || HDU 4861 Couple doubi
题目链接 题意 : 有K个球,给你一个数P,可以求出K个值,(i=1,2,...,k) : 1^i+2^i+...+(p-1)^i (mod p).然后女朋友先取,再xp取,都希望赢,如果女朋友能赢输 ...
最新文章
- 你曾经是那手握烙铁的少年
- 三亚之旅 海景--美得让你尖叫
- UINavigationBar 上面添加多个按钮
- DataTransmission:免费薅羊毛,Are you kidding me? 镭速传输 “百日计划”提前大曝光!Raysync传输协议要开放?
- [android] 解决DatePickerDialog和TimePickerDialog控件取消按钮问题
- CodeForces 731C Socks
- yum安装elasticsearch慢_ELK elasticsearch yum 安装(4th)
- ping端口怎么ping_英雄联盟手游ping信号怎么发送 ping信号发送方法介绍_游戏攻略...
- java generic new_java中generic实例详解
- js ---- 数组操作
- Java 9 ← 2017,2019 → Java 13 ,Java 两年来都经历了什么?| CSDN 博文精选
- python脚本入门_python 脚本学习(一)
- android javap命令生成自定义类签名
- 人脸识别数据集-WebFace260M
- 好用的内网穿透工具汇总
- Java--Integer
- Retrofit+kotlin Coroutines(协程)+mvvm(Jetpack架构组件)实现更简洁的网络请求
- When Runtime.exec() won't Navigate yourself around pitfalls related to the Runtime.exec() method
- Event causality extraction based on connectives analysis
- NASA首次拍到宇宙大爆炸后一瞬间的清晰照片