Hdu4939 Stupid Tower Defense
首先说一下题意在一长度为n的格子里放三种塔
第一种是 red 塔 在经过这个塔时有每秒 x 点的伤害
第二种是 green 塔 在这个塔之后的所有格子都会有一个每秒 y 点的伤害
第三种是 blue 塔 在这个塔之后的所有格子的时间都会增加 z 秒
经过格子有一个初始的时间。求伤害的最大值
贪心是不对的。。。应该用dp;
其中,红塔一定是放在最后的,所以可以枚举红塔的个数k;
dp【i】【j】代表有i个蓝塔,j个绿塔当前能取得的最大伤害,用dp【i】【j】来更新dp【i+1】【j】,dp【i】【j+1】;
最后的总伤害等于dp【i】【n-i-k】+k*x*(t+z*i)+(n-i-k)*k*y*(t+z*i)(i从0到n-k)的最大值。
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<queue>
#include<vector>
#include<stack>
#include<functional>
using namespace std;
typedef long long LL;
const int N=1505;
const int INF=0x3f3f3f3f;
LL n,x,y,z,t;LL dp[2000][2000];//dp[i][j] 代表 有i个冰塔j个毒塔
int main()
{int T;scanf("%d",&T);for(int cases=1;cases<=T;cases++){LL ans=0LL;scanf("%lld%lld%lld%lld%lld",&n,&x,&y,&z,&t);LL cnt=t;LL cny=0;LL maxx=0LL;memset(dp,0,sizeof(dp));for(int i=0;i<n;i++){for(int j=0;j<n-i;j++){dp[i+1][j]=max(dp[i+1][j],dp[i][j]+j*(t+z*i)*y);dp[i][j+1]=max(dp[i][j+1],dp[i][j]+j*(t+z*i)*y);}}for(int k=1;k<=n;k++) {for(int i=0;i<=n-k;i++){ans=max(ans,dp[i][n-i-k]+k*x*(t+z*i)+(n-i-k)*k*y*(t+z*i));}}printf("Case #%d: %I64d\n",cases,ans);}return 0;}
Hdu4939 Stupid Tower Defense相关推荐
- unity2D塔防游戏资源 Tower Defense 2D v1.3.1
unity2D塔防游戏资源 Tower Defense 2D v1.3.1 包括: - 平铺地图编辑器窗口; - 级别编辑窗口; - 单位和塔编辑窗口; - 主菜单场景; - 级别选择场景; - 3个 ...
- hihocoder Tower Defense Game(树上贪心)
题目大意 给定一颗以1为根节点的树,每个节点有一个购入价格p和卖出价格q. 进入一个节点时需要花费p,离开时可以收回q,每个节点只产生一次购入和卖出. 请你选择一个遍历的顺序,要求在遍历的过程中身上的 ...
- [**收藏**] Warcraft 小游戏 -- Tower Defense(1) -- Flash Element TD
空格键显示血 转载于:https://www.cnblogs.com/temptation/archive/2007/05/31/766247.html
- 塔防游戏的路径寻找算法分析
在塔防游戏中,有很多敌人都是向着同一目标前进的.在众多塔防游戏当中,有一条或几条预定好的路径.在一些塔防游戏中,比如经典的<Desktop Tower Defense>,你可以将塔放在地图 ...
- 2014_hangzhou_onsite
4770 Lights Against Dudely 状态压缩+枚举 4771 Stealing Harry Potter's Precious 签到,压缩后直接BFS 4772 Zhuge Lian ...
- css flexbox模型_CSS Flexbox在全国范围内的公路旅行中得到了解释
css flexbox模型 by Kevin Kononenko 凯文·科诺年科(Kevin Kononenko) CSS Flexbox在全国范围内的公路旅行中得到了解释 (CSS Flexbox ...
- 如何制作一个塔防游戏 Cocos2d x 2 0 4
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 本文实践 ...
- h5跨域访问图片_h5标签canvas关于getImageData跨域的问题
h5标签canvas关于getImageData跨域的问题 在学习h5的时候,canvas标签中getImageData()报错:security error! 具体代码如下(chrome浏览器): ...
- 将3D坐标转成2D坐标的方法
将3D坐标转成2D坐标的方法.3D坐标在Unity中称作World Space,2D坐标称作Screen Space, 是以pixel为基准,以iPad 1024 x 768(4:3)的解析度为例子: ...
- CS61A Proj 3
更好的阅读体验 Project 3: Ants Vs. SomeBees ants.zip The bees are coming! Create a better soldier With inhe ...
最新文章
- 面向对象设计:共性VS个性-------继承的粒度和聚合的粒度以及类的重构
- python简易图形-python图形用户界面(四):教你实现一个简单实用的计时器
- 【AC Saber】双指针
- 图论 —— 生成树 —— 次小生成树
- ArcGIS API for JavaScript:Layer之间那点儿事
- ESXi日志分析网站第五版v5.4
- 关于vs重新生成出现“错误 CS0006: 未能找到元数据文件”.
- 正商职业学校预付费云平台系统 的设计与应用
- AutoJs学习-多点取色
- Vue2.0+组件库总结
- svn 文件夹没有绿勾红感叹号图标
- 扫除知识共享障碍,天翎知识文档管理系统+群晖NAS一体化解决方案
- php会议签到签退系统,会议签到管理系统,无障碍会议签到系统,一卡通会议签到系统,会议签到系统 - 新开普(NewCapec)...
- html 创建一个正方形,css 如何设置带有正方形项目的列表
- 人工智能的出现,赋予零售业6种应用新生命!
- 彩虹六号服务器维护3月19号,彩虹六号无法初始化battleye服务器咋办 | 手游网游页游攻略大全...
- vue使用sort实现json数据中字母排序
- 宇宙无敌第一帅的Java笔记
- 如何理解金融中的 “头寸”
- 三维重建面试3:旋转矩阵-病态矩阵、欧拉角-万向锁、四元数
热门文章
- Hello, CTF WP
- win7 系统盘 减肥
- FastReport Mono 2023.1 Crack
- springdata jpa in查询
- 高性能计算中的并行计算、分布式计算、网格计算和云计算之间的区别与联系
- 腾讯轻量云FREEBSD11.1安装panabit cloud
- CDH 6系列(CDH 6.0.0、CHD 6.1.0等)安装和使用
- OSChina 周一乱弹 —— 大学老教授说你媳妇在幼儿园
- ios string转dic_如何在Swift(iOS,Xcode)中将NSDictionary转换为Json String?
- 腾讯、华为角逐“云游戏”