HDU 1176 免费馅饼 简单动态规划
世道很简单的动态规划,但是却错了,让我很无语,改来改去还是不对,第二天有写就对了,之后我就耐着性子慢慢比较之前的错误代码,发现
第一次错:纯粹用了a[i][j]+=max3(a[i+1][j-1], a[i+1][j], a[i+1][j+1]);没有考虑j为0没有a[i+1][j-1]的存在和j为10时没有a[i+1][j+1]的存在
第二次错:我纠正了第一次的错误,把j为0和10单独考虑,这是数塔类型,我是自下向上推得,所以行数应该从最大的时间m=t;m-1开始的,但我写的是m,我感觉应该没有什么问题,但却栽了;
第三次错:心太急了,已经心烦意乱了,我纠正了前两次的错误, 并修改成每次a[t][l+1]++;这样就不用特殊处理了,但是我的j应该是从0-12;但我却j=1; j<11; j++; 应该写成 j=1; j<12; j++;我也真是醉了!还有就是a[t][l++]++;也是错,为什么!看来严谨的精神是很重要的!
这次的经历虽然很浪费时间,但是让我明白了,无论什么时候都要静下心来,不能乱,如果心乱了就静一静,先不要写代码!
#include<stdio.h>
#include<string.h>
#define N 100010
int a[N][12]; int max2(int x, int y)
{
return x>y?x:y;
} int max3(int x, int y, int z)
{
int v=max2(x, y); return max2(v, z);
}
int main()
{
int n, l, t;
while(scanf("%d", &n), n!=0)
{
memset(a, 0, sizeof(a)); int m=0;
for(int i=0; i<n; i++)
{
scanf("%d%d", &l, &t);
a[t][l+1]++; if(m<t)
m=t;
} for(int i=m-1; i>=0; i--)
for(int j=1; j<=11; j++)
{
a[i][j]+=max3(a[i+1][j-1], a[i+1][j], a[i+1][j+1]);
} printf("%d\n", a[0][6]); }
return 0;
}
HDU 1176 免费馅饼 简单动态规划的更多相关文章
- HDU 1176 免费馅饼 (动态规划)
HDU 1176 免费馅饼 (动态规划) Description 都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼.说来gameboy的人品实在是太好了,这馅饼 ...
- HDU 1176 免费馅饼【动态规划】
解题思路:用a[i][j]表示在第i秒在地点j的掉落馅饼的数量,设整个馅饼掉落的时间持续为timemax,即为矩阵的高度,一共0到10个地点,为矩阵的长度,如图,即可构成数塔,因为考虑到在地点0的时候 ...
- HDU 1176 免费馅饼 (动态规划、另类数塔)
免费馅饼 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ...
- hdu 1176 免费馅饼(数塔类型)
http://acm.hdu.edu.cn/showproblem.php?pid=1176 免费馅饼 Time Limit: 2000/1000 MS (Java/Others) Memory ...
- HDU 1176 免费馅饼 (类似数字三角形的题,很经典,值得仔细理解的dp思维)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1176 免费馅饼 Time Limit: 2000/1000 MS (Java/Others) ...
- HDU 1176免费馅饼 DP数塔问题转化
L - 免费馅饼 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit Sta ...
- HDU 1176 免费馅饼(记忆化搜索)
免费馅饼 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
- Hdoj 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 Submis ...
随机推荐
- 设计模式之简单工厂模式(Simply Factory)摘录
从设计模式的类型上来说,简单工厂模式是属于创建型模式,又叫静态工厂方法(Static Factory Method)模式.但不属于23种GOF设计模式之中的一个.简单工厂模式是由一个工厂对象决定创建出 ...
- 深入理解 Java 垃圾回收机制(转)
一.垃圾回收机制的意义 Java语言中一个显著的特点就是引入了垃圾回收机制,使c++程序员最头疼的内存管理的问题迎刃而解,它使得Java程序员在编写程序的时候不再需要考虑内存管理.由于有个垃圾回收机制 ...
- Powershell About File System
File System Rights Get-Acl $sharepath | select -expand access | where { !$_.IsInherited -AND $_.file ...
- Oracle安装错误:File not found WFMLRSVCApp.ear
oracle 11g安装过程中问题:找不到WFMLRSVCApp.ear 在 oracle 11gR2 64bit 安装到window 7 64位操作系统中,安装到53%时,提示找不到WFMLRSVC ...
- http://www.nirsoft.net/about_nirsoft_freeware.html
http://www.nirsoft.net/about_nirsoft_freeware.html
- Django框架-模板系统
来看一段代码 def current_datetime(request): now = datetime.datetime.now() html = "<html><bod ...
- servlet中获取各种相对地址(服务器、服务器所在本地磁盘、src等)。
[本文简介] 本文将提供javaWeb中经常使用到的相对路径的获取方法,分别有: url基本地址 带目录的url地址 服务器的根路径 服务器所在的 本地磁盘路径 服务器所在的本地磁盘路径,带文件夹 S ...
- Android图片加载框架之Picasso
相信做Android开发的对Square公司一定不会陌生,大名鼎鼎的网络请求框架Retrofit就来源于它,今天学习的是该公司出品的图片加载框架Picasso. 项目地址 https://github ...
- 数据库、Java与Hibernate数据类型对照
数据类型对照表: 标准SQL数据类型 Java数据类型 Hibernate数据类型 TINYINT byte.java.lang.Byte byte SMALLINT short.java.lang. ...
- R语言seq()函数用法
1.seq() 用来生成一组数字的函数. Usage: ## Default S3 method:seq(from = 1, to = 1, by = ((to - from)/(length.out ...