bzoj1616[Usaco2008 Mar]Cow Travelling游荡的奶牛*
bzoj1616[Usaco2008 Mar]Cow Travelling游荡的奶牛
题意:
n行m列的草地上有一些位置有障碍物。第0时刻奶牛在(r1,c1),第t时刻奶牛在(r2,c2)(注意这里都是行在前,列在后),求奶牛走的方案数。n,m≤100,t≤15。
题解:
dp。f[i][j][k]表示当前为第i时刻,在j行k列,则f[i][j][k]=f[i+1][j-1][k]+f[i+1][j+1][k]+f[i+1][j][k-1]+f[i+1][j][k+1],前提是这些位置不出边界且不为障碍物。
代码:
1 #include <cstdio> 2 #include <cstring> 3 #include <algorithm> 4 #define maxn 110 5 #define inc(i,j,k) for(int i=j;i<=k;i++) 6 #define dec(i,j,k) for(int i=j;i>=k;i--) 7 using namespace std; 8 9 int n,m,t,x[maxn][maxn],y[maxn][maxn],x1,y1,x2,y2; char map[maxn][maxn]; 10 int main(){ 11 scanf("%d%d%d",&n,&m,&t); inc(i,1,n)scanf("%s",map[i]+1); scanf("%d%d%d%d",&x1,&y1,&x2,&y2); x[x2][y2]=1; 12 dec(i,t,1){ 13 memset(y,0,sizeof(y)); 14 inc(j,1,n)inc(k,1,m){ 15 if(j+1<=n&&map[j+1][k]!='*')y[j][k]+=x[j+1][k]; 16 if(j-1>=1&&map[j-1][k]!='*')y[j][k]+=x[j-1][k]; 17 if(k+1<=m&&map[j][k+1]!='*')y[j][k]+=x[j][k+1]; 18 if(k-1>=1&&map[j][k-1]!='*')y[j][k]+=x[j][k-1]; 19 } 20 swap(x,y); 21 } 22 printf("%d",x[x1][y1]); return 0; 23 }
20160802
转载于:https://www.cnblogs.com/YuanZiming/p/5732524.html
bzoj1616[Usaco2008 Mar]Cow Travelling游荡的奶牛*相关推荐
- BZOJ1616[Usaco2008 Mar]Cow Travelling游荡的奶牛 dp
Description 奶牛们在被划分成N行M列(2 <= N <= 100; 2 <= M <= 100)的草地上游走,试图找到整块草地中最美味的牧草.Farmer John ...
- bzoj1616 [Usaco2008 Mar]Cow Travelling游荡的奶牛 [BFS]
Description 奶牛们在被划分成N行M列(2 <= N <= 100; 2 <= M <= 100)的草地上游走,试图找到整块草地中最美味的牧草.Farmer John ...
- BZOJ1616: [Usaco2008 Mar]Cow Travelling游荡的奶牛
题目传送门 题解: 水题一道 bfs水过 代码直接抄黄学长的 #include<iostream> #include<cstdio> using namespace std; ...
- [BZOJ1616][Usaco2008 Mar]Cow Travelling游荡的奶牛(dfs||dp)
题目描述 传送门 题解 看题了之后算了算,步数只有15步,似乎加了这个剪枝之后状态很少啊= =于是直接开始码bfs.码出来了之后发现对拍大数据老是出错,而且把剪枝加的越少数越小!原来我忽略了一个非常重 ...
- bzoj 1616: [Usaco2008 Mar]Cow Travelling游荡的奶牛(BFS)
1616: [Usaco2008 Mar]Cow Travelling游荡的奶牛 Time Limit: 5 Sec Memory Limit: 64 MB Submit: 1293 Solved ...
- BZOJ 1616: [Usaco2008 Mar]Cow Travelling游荡的奶牛【DP】
1616: [Usaco2008 Mar]Cow Travelling游荡的奶牛 Time Limit: 5 Sec Memory Limit: 64 MB Description 奶牛们在被划分成N ...
- BZOJ 1616: [Usaco2008 Mar]Cow Travelling游荡的奶牛 bfs
1616: [Usaco2008 Mar]Cow Travelling游荡的奶牛 Time Limit: 5 Sec Memory Limit: 64 MB Submit: 1290 Solved ...
- 【bzoj 1616】: [Usaco2008 Mar]Cow Travelling游荡的奶牛 dp
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1616 1616: [Usaco2008 Mar]Cow Travelling游荡的奶牛 Tim ...
- BZOJ 1616 Usaco2008 Cow Travelling
1616: [Usaco2008 Mar]Cow Travelling游荡的奶牛 Time Limit: 5 Sec Memory Limit: 64 MB Submit: 1412 Solved ...
最新文章
- 《深入浅出WPF》笔记——事件篇
- Android进阶:十三、自定义类加载器加载加密类文件
- 如何解决http封包中gzip编码的html
- Uptime Tier Ⅳ标准数据中心的柴发油路设计关键点
- import引入json文件_关于TypeScript中import JSON的正确姿势详解
- random_normal_initializer 使用
- Excel分列功能的妙用
- 简述原型模型的特点_3D打印硅胶复模手板的步骤和特点有哪些
- Scrapy_LinkExtractor
- Applying Multicycle Exceptions in the TimeQuest Timing Analyzer--Altera Note
- 网络打印机 RPC服务器不可用
- 莎拉波娃美网新赛服亮相
- python管道怎么使用_python中管道用法入门实例
- python的全局变量 local variable ‘xxx‘ referenced before assignment
- web安全day38:使用Vulhub一键搭建测试靶场
- 弹出浮层css+JQuery
- 单光感pid巡线_PID非常好的光感巡线思路
- 端口监听 端口通信(Socket,ServerSocket)
- java/js中语音提醒功能的实现
- ALGOL语言 发展历史
热门文章
- bluetooth射频已关闭请打开bluetooth射频_投资笔记:5G之射频研究
- [置顶] 黑马程序员 -- 多线程
- SQLserver的Always On 可用性组
- PromSql的写法详解
- 小技巧——windows应用商店 无法加载页面解决办法
- 201671010458 种兴达 实验三作业互评与改进报告
- 黑马程序员————高新技术————动态代理
- 单位弹性需求曲线形状_需求曲线为直线时,在单位弹性点上总收益为最大。 - 问答库...
- 灵魂画手图解Spring循环依赖
- 某计算机系统中有k台打印机,第三章复习题(2)