正题

第二题:小a和uim之大逃离

这题有点烦,但是我们可以从k入手,大小为k的魔瓶,可以装的容量为0到k,那么相当于我们每一次mod 一下k 就行了。

我们当然也可以从小a和小uim的魔瓶差入手,我们设f[i][j][h][a/uim]为小a或小uim走到(i,j)这个点,小a和小uim的魔瓶差值为h的方案数。

那么很容易就可以得出动态规划方程。

f[i][j][k][a]=f[i][j][h-map[i][j]]..

f[i][j][k][uim]=f[i][j][h+map[i][j]]..

相加一下即可。

最后的答案明显就是,以uim结尾的魔瓶差为0的方案数总和。

代码<有些东西还是在程序中才看得出来>

#include<cstdio>
#include<cstdlib>
#include<cstring>int f[810][810][16][2];
int n,m,k;
int map[810][810];int suan(int &x,int y)
{return x=(x+y)%1000000007;
}int main()
{scanf("%d %d %d",&n,&m,&k);k++;for(int i=1;i<=n;i++)for(int j=1;j<=m;j++){int x;scanf("%d",&x);x%=k;map[i][j]=x;f[i][j][x][0]=1;}for(int i=1;i<=n;i++)for(int j=1;j<=m;j++)for(int h=0;h<k;h++){suan(f[i][j][h][0],f[i-1][j][(h+k-map[i][j])%k][1]+f[i][j-1][(h+k-map[i][j])%k][1]);suan(f[i][j][h][1],f[i-1][j][(h+map[i][j])%k][0]+f[i][j-1][(h+map[i][j])%k][0]);}long long tot=0;for(int i=1;i<=n;i++)for(int j=1;j<=m;j++){tot+=f[i][j][0][1];tot%=1000000007;}printf("%lld\n",tot);
}

小a和uim之大逃离,洛谷之提高历练地,动态规划TG.lv(1)(3-2)相关推荐

  1. 洛古 P1373 小a和uim之大逃离

    P1373 小a和uim之大逃离 题目提供者lzn 标签 动态规划 洛谷原创 难度 提高+/省选- 题目背景 小a和uim来到雨林中探险.突然一阵北风吹来,一片乌云从北部天边急涌过来,还伴着一道道闪电 ...

  2. 洛谷P1373 小a和uim之大逃离

    P1373 小a和uim之大逃离 题目背景 小a和uim来到雨林中探险.突然一阵北风吹来,一片乌云从北部天边急涌过来,还伴着一道道闪电,一阵阵雷声.刹那间,狂风大作,乌云布满了天空,紧接着豆大的雨点从 ...

  3. 洛谷1373 小a和uim之大逃离

    https://www.luogu.org/problem/show?pid=1373 题目背景 小a和uim来到雨林中探险.突然一阵北风吹来,一片乌云从北部天边急涌过来,还伴着一道道闪电,一阵阵雷声 ...

  4. 洛谷 1373 dp 小a和uim之大逃离 良心题解

    洛谷 1373 dp 这题还不算太难,,当初看的时候不是很理解题意,以为他们会选择两条不同的路径,导致整体思路混乱 传送门 其实理解题意和思路之后还是敲了不短的时间,一部分身体原因再加上中午休息不太好 ...

  5. 洛谷1373小a和uim之大逃离

    题目背景 小a和uim来到雨林中探险.突然一阵北风吹来,一片乌云从北部天边急涌过来,还伴着一道道闪电,一阵阵雷声.刹那间,狂风大作,乌云布满了天空,紧接着豆大的雨点从天空中打落下来,只见前方出现了一个 ...

  6. 【题解】洛谷P1373 小a和uim之大逃离(dp 递推)

    题目背景 小a和uim来到雨林中探险.突然一阵北风吹来,一片乌云从北部天边急涌过来,还伴着一道道闪电,一阵阵雷声.刹那间,狂风大作,乌云布满了天空,紧接着豆大的雨点从天空中打落下来,只见前方出现了一个 ...

  7. 【洛谷P3818】小A和uim之大逃离 II

    题目背景 话说上回--还是参见 https://www.luogu.org/problem/show?pid=1373 吧 小a和uim再次来到雨林中探险.突然一阵南风吹来,一片乌云从南部天边急涌过来 ...

  8. luogu P1373 小a和uim之大逃离

    题目背景 小a和uim来到雨林中探险.突然一阵北风吹来,一片乌云从北部天边急涌过来,还伴着一道道闪电,一阵阵雷声.刹那间,狂风大作,乌云布满了天空,紧接着豆大的雨点从天空中打落下来,只见前方出现了一个 ...

  9. [P1373]小a和uim之大逃离

    题目背景 小a和uim来到雨林中探险.突然一阵北风吹来,一片乌云从北部天边急涌过来,还伴着一道道闪电,一阵阵雷声.刹那间,狂风大作,乌云布满了天空,紧接着豆大的雨点从天空中打落下来,只见前方出现了一个 ...

最新文章

  1. Mybatis choose (when, otherwise)标签
  2. android+动画+锯齿,Android当中的防锯齿(Bitmap Canvas )
  3. android webservice 简单应用
  4. LeetCode 旋转数组 系列
  5. 光动能表怎么维护_男士手表什么牌子好,男士手表品牌推荐, 天梭、阿玛尼、西铁城、天王表、罗西尼、卡西欧男手表推荐...
  6. C#传递参数调用exe程序
  7. SharePoint 上传附件
  8. Java中使用KCP协议
  9. [机器学习] 混淆矩阵和kappa系数
  10. adobe Director的一些快捷键(direct_Shortcut)
  11. shared memory realm does not exist解决办法
  12. php怎么弄钓鱼,php 最新qq钓鱼空间php源码 需要修改数据库连接 WEB(ASP,PHP,...) 247万源代码下载- www.pudn.com...
  13. 读书笔记之《薄世宁·医学通识50讲》
  14. LMS自适应滤波器的FPGA实现
  15. 接触Firefox的xpi
  16. C语言 简单走迷宫小游戏
  17. 通信基础篇小项目-----简单网络画板的的实现
  18. Nginx 日志和监控 - TCP 健康监测
  19. C++基础---三目运算符
  20. 微信小程序车牌号组件,车牌号键盘,兼容新能源号牌

热门文章

  1. 国内开源社区有哪些 ?|GitCode
  2. 如何合理选择压力传感器
  3. 适用于***测试不同阶段的工具收集整理
  4. 基于CPLD的主板上电时序控制--状态机方式
  5. parallels desktop cracked
  6. Spring boot开发小而美的个人博客
  7. windows命令行下通过cl命令编译动态链接库示例
  8. 把Android手机变成远程监控摄像头
  9. iminicam服务器维护,iminicam摄像机连不上
  10. python dataframe dropna_在Python中使用熊猫在两个DataFrame之间进行值...