vijosP1006 晴天小猪历险记之Hill
vijosP1006 晴天小猪历险记之Hill
链接:https://vijos.org/p/1006
【思路】
图上DP。
这个题的递推顺序是关键。先从上一行得到最小值,然后从本行比较最小值,注意本行、本行与上一行之间的第一段与最后一段是相通的。
【代码】
1 #include<cstdio> 2 #include<iostream> 3 #include<cstring> 4 #define FOR(a,b,c) for(int a=(b);a<=(c);a++) 5 using namespace std; 6 7 const int maxn = 1000+10; 8 const int INF=1<<30; 9 10 int w[maxn][maxn],d[maxn][maxn]; 11 int n; 12 13 int main() 14 { 15 scanf("%d",&n); 16 FOR(i,1,n) FOR(j,1,i) scanf("%d",&w[i][j]); 17 memset(d,25,sizeof(d)); 18 d[n][0]=0; 19 FOR(i,1,n) d[n][i]=d[n][i-1]+w[n][i]; 20 for(int i=n-1;i;i--) 21 { 22 FOR(j,1,i) { 23 if(j==1) 24 d[i][j]=min(d[i+1][i+1],min(d[i+1][j],d[i+1][j+1]))+w[i][j]; 25 else if(j==i) { 26 d[i][j]=min(d[i+1][1],min(d[i+1][j],d[i+1][j+1]))+w[i][j]; 27 } 28 else 29 d[i][j]=min(d[i+1][j],d[i+1][j+1]) + w[i][j]; 30 } 31 d[i][1] = min(d[i][1],d[i][i]+w[i][1]); 32 FOR(j,2,i) d[i][j] = min(d[i][j],d[i][j-1] + w[i][j]); 33 for(int j=i-1;j;j--) d[i][j] = min(d[i][j],d[i][j+1] + w[i][j]); 34 } 35 printf("%d\n",d[1][1]); 36 return 0; 37 }
vijosP1006 晴天小猪历险记之Hill相关推荐
- vijos 1006 晴天小猪历险记之Hill——数字三角形的终极变化
题目链接:https://vijos.org/p/1006 数字三角形原题看这里:http://www.cnblogs.com/huashanqingzhu/p/7326837.html 背景 在很久 ...
- 晴天小猪历险记之Hill
题目描述 这一天,他来到了一座深山的山脚下,因为只有这座深山中的一位隐者才知道这种药草的所在.但是上山的路错综复杂,由于小小猪的病情,晴天小猪想找一条需时最少的路到达山顶,但现在它一头雾水,所以向你求 ...
- 【vijos】1006 晴天小猪历险记之Hill(dijkstra)
https://vijos.org/p/1006 连边后跑点权的最短路 注意连边的时候左端点可以连到下一行的右端点,右端点可以连到下一行的左端点 #include <cstdio> #in ...
- 18.03.06 vijos1006 晴天小猪历险记之Hill
背景 在很久很久以前,有一个动物村庄,那里是猪的乐园(^_^),村民们勤劳.勇敢.善良.团结-- 不过有一天,最小的小小猪生病了,而这种病是极其罕见的,因此大家都没有储存这种药物.所以晴天小猪自告奋勇 ...
- P1006晴天小猪历险记之Hill
背景 在很久很久以前,有一个动物村庄,那里是猪的乐园(^_^),村民们勤劳.勇敢.善良.团结-- 不过有一天,最小的小小猪生病了,而这种病是极其罕见的,因此大家都没有储存这种药物.所以晴天小猪自告奋勇 ...
- voj1006 晴天小猪历险记之Hill
背景 Background 在很久很久以前,有一个动物村庄,那里是猪的乐园(^_^),村民们勤劳.勇敢.善良.团结-- 不过有一天,最小的小小猪生病了,而这种病是极其罕见的,因此大家都没有储存这种 ...
- 回档|晴天小猪历险记之hill
背景 Background 在很久很久以前,有一个动物村庄,那里是猪的乐园(^_^),村民们勤劳.勇敢.善良.团结-- 不过有一天,最小的小小猪生病了,而这种病是极其罕见的,因此大家都没有储存这种药物 ...
- Vijos 1006 晴天小猪历险记之Hill 单源单汇最短路
背景 在很久很久以前,有一个动物村庄,那里是猪的乐园(^_^),村民们勤劳.勇敢.善良.团结-- 不过有一天,最小的小小猪生病了,而这种病是极其罕见的,因此大家都没有储存这种药物.所以晴天小猪自告奋勇 ...
- 晴天小猪历险记之Hill解题报告
和数字三角形类似,但要更复杂一些. 一开始就仿照数字三角形写了方程:f[i][j]=min{f[i+1][j],f[i+1][j+1],f[i][j-1],f[i][j+1]},后来代码实现的时候发现 ...
最新文章
- 上面一个星星下面一个r_中国第一个王朝不是夏朝?山西出土一个破陶壶,上面俩字揭开谜题...
- python如何调用文件进行换位加密_python 换位密码算法的实例详解
- pytorch笔记:pytorch的乘法
- bai的字怎么写_教师节贺卡祝福语怎么写?教师节贺卡贺词祝福语精简20个字
- mysql 热切换_热备服务器中,切换master中切换SQL
- Maven(一):安装与环境配置、使用Maven搭建web项目
- web service design time table
- 如何下载、配置IDEA的Maven
- 钉钉机器人发送图片 python_python封装钉钉Webhook机器人消息发送逻辑
- IDEA主题设置与eclipse代码风格一致
- Google存储海量私人信息 隐私问题不堪设想
- sql 整改措施 注入_SQL注入入侵防范措施
- 班级的每日作业和任务目标
- python中的urllib模块中的方法
- java反射机制(4)动态代理初探
- Anaconda的安装与使用(Windows下)
- matlab 小波变换程序,matlab 小波变换
- 泰迪杯A题通讯产品销售和盈利能力分析一等奖作品
- QTcreater学习笔记
- 70个居家做饭小技巧
热门文章
- java GB28181 大华 海康摄像机国标对接源码源代码程序
- 2006年网络经典语录选粹
- 安卓开机logo和开机动画的几种实现方法
- java 读者写者_Java实现生产者消费者问题与读者写者问题详解
- 哪种女子才是男人最想要的?
- Postgres使用pg_resetwal命令修改wal日志文件大小的方法
- 直播星调整完毕,本土微电子公司利好
- python安装失败0x80070570_Python:“ModuleNotFoundError”,但模块已安装?
- b2b b2c o2o分布式电子商务平台源码 mybatis+spring cloud
- Jest+Enzyme测试React组件(上)