免费馅饼(HDU-1176)
Problem Description
都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼。说来gameboy的人品实在是太好了,这馅饼别处都不掉,就掉落在他身旁的10米范围内。馅饼如果掉在了地上当然就不能吃了,所以gameboy马上卸下身上的背包去接。但由于小径两侧都不能站人,所以他只能在小径上接。由于gameboy平时老呆在房间里玩游戏,虽然在游戏中是个身手敏捷的高手,但在现实中运动神经特别迟钝,每秒种只有在移动不超过一米的范围内接住坠落的馅饼。现在给这条小径如图标上坐标:
为了使问题简化,假设在接下来的一段时间里,馅饼都掉落在0-10这11个位置。开始时gameboy站在5这个位置,因此在第一秒,他只能接到4,5,6这三个位置中其中一个位置上的馅饼。问gameboy最多可能接到多少个馅饼?(假设他的背包可以容纳无穷多个馅饼)
Input
输入数据有多组。每组数据的第一行为以正整数n(0<n<100000),表示有n个馅饼掉在这条小径上。在结下来的n行中,每行有两个整数x,T(0<T<100000),表示在第T秒有一个馅饼掉在x点上。同一秒钟在同一点上可能掉下多个馅饼。n=0时输入结束。
Output
每一组输入数据对应一行输出。输出一个整数m,表示gameboy最多可能接到m个馅饼。
提示:本题的输入数据量比较大,建议用scanf读入,用cin可能会超时。
Sample Input
6
5 1
4 1
6 1
7 2
7 2
8 3
0Sample Output
4
思路:与数塔问题相同的思维。
构造一个矩阵dp[t][x],表示第t秒第x个位置上有馅饼掉落,那么我把所有馅饼都填入表,这样从底向上走,走到最上面一层,找到所走过的位置中馅饼之数最大的数即可。
Source Program
#include<iostream>
#include<cstring>
#define N 100001
using namespace std;
int dp[N][12];int max(int a,int b,int c)
{int temp=a>b?a:b;return temp>c?temp:c;
}
int main()
{int c,n;int x,t;int i,j;int maxx;while(cin>>n && n){memset(dp,0,sizeof(dp));maxx=0;for(i=0;i<n;i++){cin>>x>>t;dp[t][x]++;//第几分钟第几位置加上一个馅饼if(maxx<t)//记录最大的行maxx=t;}for(i=maxx-1;i>=0;i--)//枚举时间for(j=0;j<=10;j++)//枚举坐标dp[i][j]=max(dp[i+1][j+1],dp[i+1][j],dp[i+1][j-1])+dp[i][j];cout<<dp[0][5]<<endl;}return 0;
}
免费馅饼(HDU-1176)相关推荐
- 免费馅饼 HDU - 1176
免费馅饼 HDU - 1176 题意: 都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼.说来gameboy的人品实在是太好了,这馅饼别处都不掉,就掉落在他身旁 ...
- 动态规划训练18 [免费馅饼 HDU - 1176 ]
免费馅饼 HDU - 1176 这也是一道比较简单的动态规划 dp[i][j]表示到时间i,位置为j所能采集的最大馅饼数量 状态转移非常好写 dp[i][j] = max{dp[i-1][j],dp[ ...
- 免费馅饼 (DP动态规划问题详细解析)
免费馅饼 HDU - 1176 都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼.说来gameboy的人品实在是太好了,这馅饼别处都不掉,就掉落在他身旁的10米 ...
- HDU 1176 免费馅饼(记忆化搜索)
免费馅饼 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
- HDU 1176 免费馅饼 (动态规划、另类数塔)
免费馅饼 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
- hdu 1176 免费馅饼(DP)
免费馅饼 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
- HDU -- 免费馅饼(ACM Step: 3.2.8)
一.概述 1.问题描述 在一个长度为10的数轴中,从0到10编号,gameboy站在坐标为5的点,此刻时间为0. 已知,每过1秒,在不同的坐标点都有可能出现馅饼,并且gameboy每秒钟只能走1个数轴 ...
- 免费馅饼 (动态规划)
HDU 1176 免费馅饼 (动态规划) Problem Description 都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼.说来gameboy的人品实在 ...
- NYOJ 613免费馅饼
免费馅饼 时间限制: 1000 ms | 内存限制: 65535 KB 难度: 3 描述 都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼.说来gamebo ...
- NYOJ 613 免费馅饼
免费馅饼 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描写叙述 都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼.说来gameboy ...
最新文章
- Linux执行可执行文件提示No such file or directory的解决方法
- 深入理解CSS变形transform(3d)
- 看看那些令你惊叹的PCB设计艺术
- 谷歌火狐浏览器限制的端口
- 使用flex布局把三个元素分配成两列,第二列垂直布局两个元素
- ASP.NET Web API 接口执行时间监控
- 纯文字海报如何排版更引人注目?
- opencv计算图像亮度调节_图像数据集增强方式总结和实现【数字图像处理系列四】...
- java程序无法启动_无法打开java小程序?小迅支招
- markdown 数学公式符号大全
- java商品详情页设计_java高并发秒杀系统3-2节商品详情页上.mp4
- 202020 公文系统安装技巧
- 上海高一计算机奥赛,上海物理奥赛金牌“大神”爱番剧和高达,已保送清华大学姚班...
- SSL 3.0 安全漏洞修复方法
- windows10+python3.7.0(anaconda)+MeCab安装总结
- 基于c语言的语法分析器的实现
- c11计算机考试,2015年计算机二级考试C++备考练习试题及答案(6)
- ubuntu16 安装UR5e driver
- Jim在2022的8760小时
- github 链接域名