HDU_1176_免费馅饼_16.4.23再做
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1176
免费馅饼
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 38193 Accepted Submission(s): 13056

为了使问题简化,假设在接下来的一段时间里,馅饼都掉落在0-10这11个位置。开始时gameboy站在5这个位置,因此在第一秒,他只能接到4,5,6这三个位置中其中一个位置上的馅饼。问gameboy最多可能接到多少个馅饼?(假设他的背包可以容纳无穷多个馅饼)
提示:本题的输入数据量比较大,建议用scanf读入,用cin可能会超时。
for(int i=; i<=maxt; i++)
for(int j=; j<=; j++)
{
if(j==)
dp[i][j]=max(dp[i-][j],dp[i-][j+])+pai[j][i];
else if(j==)
dp[i][j]=max(dp[i-][j-],dp[i-][j])+pai[j][i];
else
dp[i][j]=max(max(dp[i-][j-],dp[i-][j]),dp[i-][j+])+pai[j][i];
}
dp[100005(i)][15(j)]表示第i秒时,第j个点上接到馅饼的最大值。
相当与用1e7的复杂度算了所有情况。
看网上说是个简单的数塔,虽然不知道是什么,但是从dp的更新中可以领会一些意思。
注意理解每个时刻的dp的更新情况,该时刻不可能到达的点的值一定是零。
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<stdlib.h>
using namespace std;
#define maxt 100005
int dp[][];
int pai[][];
int main()
{
int n,z,t;
while(scanf("%d",&n)!=EOF&&n)
{
memset(pai,,sizeof(pai));
memset(dp,,sizeof(dp));
for(int i=; i<n; i++)
{
scanf("%d%d",&z,&t);
if(abs(z-)<=t)
pai[z][t]++;
}
for(int i=; i<=maxt; i++)
for(int j=; j<=; j++)
{
if(j==)
dp[i][j]=max(dp[i-][j],dp[i-][j+])+pai[j][i];
else if(j==)
dp[i][j]=max(dp[i-][j-],dp[i-][j])+pai[j][i];
else
dp[i][j]=max(max(dp[i-][j-],dp[i-][j]),dp[i-][j+])+pai[j][i];
}
int res=;
for(int i=;i<=;i++)
{
if(dp[maxt][i]>res)
res=dp[maxt][i];
}
printf("%d\n",res);
}
return ;
}
HDU_1176_免费馅饼_16.4.23再做的更多相关文章
- HDU_1176_免费馅饼
http://acm.hdu.edu.cn/showproblem.php?pid=1176 参考自:http://blog.csdn.net/xcszbdnl/article/details/787 ...
- dp 46(再做一遍)
Robberies http://acm.hdu.edu.cn/showproblem.php?pid=2955 背包;第一次做的时候把概率当做背包(放大100000倍化为整数):在此范围内最多能抢多 ...
- ny613 免费馅饼
免费馅饼 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼.说来gameboy的人 ...
- HDU - 1176 免费馅饼 DP多种状态转移
免费馅饼 都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼.说来gameboy的人品实在是太好了,这馅饼别处都不掉,就掉落在他身旁的10米范围内.馅饼如果掉在了 ...
- 免费馅饼——G
G. 免费馅饼 都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼.说来gameboy的人品实在是太好了,这馅饼别处都不掉,就掉落在他身旁的10米范围内.馅饼如果 ...
- nyoj 613 免费馅饼 广搜
免费馅饼 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼.说来gameboy ...
- HDU 1176 免费馅饼
免费馅饼 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ...
- 1644 免费馅饼 题解(c++)(S.B.S.)
1644 免费馅饼(巴蜀oj上的编号) 题面: SERKOI最新推出了一种叫做“免费馅饼”的游戏. 游戏在一个舞台上进行.舞台的宽度为W格,天幕的高度为H格,游戏者占 ...
- 免费馅饼 Why WA
免费馅饼 Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 1576 Solved: 577 Description 都说天上不会掉馅饼,但有一天gameb ...
随机推荐
- SpringMVC学习指南-前言
SpringMVC是Spring框架中用于Web应用快速开发的一个模块. SpringMVC基于Spring框架.Servlet和JSP. ------------------------------ ...
- lambda和委托那点事
Lambda 简介 Lambda 表达式是一种可用于创建委托或表达式目录树类型的一种匿名函数(匿名方法+Lambda).通过使用 lambda 表达式,可以写入可作为参数传递或作为函数 调用值返回的本 ...
- ubuntu12.04安装NVIDIA显卡驱动和CUDA
1.安装显卡驱动 vim /etc/modprobe.d/blacklist.conf #编辑该文件 blacklist nouveau #行末添加,禁用原来的显卡驱动 apt-get install ...
- Broccoli & Babel使用演示样例
1 创建项目project文件夹:test 2 在test下运行 npm init 按提示填写package.json文件 3 安装broccoli命令行工具broccoli-cli npm inst ...
- [DevExpress]设置列的时间格式
方法一 设置DisplayFormatFormatString:gFormatType:DateTime 方法二
- Codeforces Round #240 (Div. 1) B. Mashmokh and ACM DP
B. Mashmokh and ACM ...
- POJ 1477:Box of Bricks
Box of Bricks Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 19949 Accepted: 8029 De ...
- 【Silverlight】Bing Maps学习系列(二):通过Bing Maps Silverlight Control如何显示地图(转)
[Silverlight]Bing Maps学习系列(二):通过Bing Maps Silverlight Control如何显示地图 如本系列第一篇你所介绍的,开发基于Silverlight的Bin ...
- [Codeforces 639B] Bear and Forgotten Tree 3
[题目链接] https://codeforces.com/problemset/problem/639/B [算法] 当d > n - 1或h > n - 1时 , 无解 当2h < ...
- 别再问什么是Java内存模型了,看这里!
网上有很多关于Java内存模型的文章,在<深入理解Java虚拟机>和<Java并发编程的艺术>等书中也都有关于这个知识点的介绍.但是,很多人读完之后还是搞不清楚,甚至有的人说自 ...