3997: [TJOI2015]组合数学

Time Limit: 20 Sec  Memory Limit: 128 MB
Submit: 247  Solved: 174
[Submit][Status][Discuss]

Description

给出一个网格图,其中某些格子有财宝,每次从左上角出发,只能向下或右走。问至少走多少次才能将财宝捡完。此对此问题变形,假设每个格子中有好多财宝,而每一次经过一个格子至多只能捡走一块财宝,至少走多少次才能把财宝全部捡完。

Input

第一行为正整数T,代表数据组数。

每组数据第一行为正整数N,M代表网格图有N行M列,接下来N行每行M个非负整数,表示此格子中财宝数量,0代表没有

Output

输出一个整数,表示至少要走多少次。

Sample Input

1
3 3
0 1 5
5 0 0
1 0 0

Sample Output

10

HINT

N<=1000,M<=1000.每个格子中财宝数不超过10^6

Source

题解:论一个怎麽看怎么像最小割的题是怎样水成DP的= =

其实成了求从右上到左下的最大权路径= =,然后就是个Dp水过(虽然具体没有很明白为啥= =)

 1 /**************************************************************
 2     Problem: 3997
 3     User: HansBug
 4     Language: Pascal
 5     Result: Accepted
 6     Time:9436 ms
 7     Memory:8132 kb
 8 ****************************************************************/
 9
10 var
11    i,j,k,l,m,n:longint;
12    a,b:array[0..1005,0..1005] of longint;
13 function max(x,y:longint):longint;
14          begin
15               if x>y then max:=x else max:=y;
16          end;
17 begin
18      readln(l);
19      while l>0 do
20            begin
21                 readln(n,m);
22                 for i:=1 to n do
23                     begin
24                          for j:=m downto 1 do read(b[i,j]);
25                          readln;
26                     end;
27                 for i:=0 to n+1 do a[i,0]:=0;
28                 for i:=0 to m+1 do a[0,j]:=0;
29                 for i:=1 to n do
30                     for j:=1 to m do
31                         a[i,j]:=max(a[i-1,j-1]+b[i,j],max(a[i-1,j],a[i,j-1]));
32                 writeln(a[n,m]);
33                 dec(l);
34            end;
35 end.

转载于:https://www.cnblogs.com/HansBug/p/4487603.html

3997: [TJOI2015]组合数学相关推荐

  1. BZOJ 3997 [TJOI2015]组合数学(单调DP)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=3997 [题目大意] 给出一个网格图,其中某些格子有财宝,每次从左上角出发,只能向下或右 ...

  2. 【BZOJ3997】[TJOI2015]组合数学 最长反链

    [BZOJ3997][TJOI2015]组合数学 Description 给出一个网格图,其中某些格子有财宝,每次从左上角出发,只能向下或右走.问至少走多少次才能将财宝捡完.此对此问题变形,假设每个格 ...

  3. [颓废史]蒟蒻的刷题记录

    QAQ蒟蒻一枚,其实我就是来提供水题库的. 以下记录从2016年开始. 1.1 1227: [SDOI2009]虔诚的墓主人 树状数组+离散化 3132: 上帝造题的七分钟 树状数组 二维区间加减+查 ...

  4. [暑假的bzoj刷水记录]

    (这篇我就不信有网站来扣) 这个暑假打算刷刷题啥的 但是写博客好累啊  堆一起算了 隔一段更新一下.  7月27号之前刷的的就不写了 , 写的累 代码不贴了,可以找我要啊.. 2017.8.27upd ...

  5. 2019.4.summary

    2019.4.1 BZOJ1061: [Noi2008]志愿者招募 真心有点难QAQ https://www.byvoid.com/zhs/blog/noi-2008-employee 看void爷的 ...

  6. 不畏浮云遮望眼--离散数学和组合数学

    不畏浮云遮望眼,基础很重要! 离散数学是算法和数据结构的基础,而算法和数据结构又是什么的基础?不解释了. 1.<离散数学及其应用> 作者: (美)Kenneth H. R 出版社: 机械工 ...

  7. szucodeforce训练1081C组合数学lucas定理,div2 627的D dfs +剪枝优化,697D Puzzles{dfs序+概率}

    给你n个方格排成一行,有m种颜色,然后要把这n个方格分成k+1段,每段涂不同的颜色,问有多少种方法. 组合数学Lucas定理 排列组合问题,首先要在n-1个位置里面选出k个位置当作段与段的分割点,然后 ...

  8. 【数学专题】组合数学与计数

    整理的算法模板合集: ACM模板 目录 AcWing 1307. 牡牛和牝牛(递推) AcWing 1308. 方程的解 AcWing 1309. 车的放置(组合数学,分类讨论) AcWing 131 ...

  9. 组合数学实验——二分图匹配算法

    2019独角兽企业重金招聘Python工程师标准>>> 大一时候写的代码,忽然翻了出来.... 算法:组合数学中文第4版 机械工业出版社 P234 ID就先隐藏掉了 // // // ...

最新文章

  1. 潜艇将来会无人驾驶吗?
  2. 某些列满足特定条件,然后改变另外的某些列的值(Python)
  3. Python__repr__()方法:显示属性
  4. Facebook开源算法代码库PySlowFast,轻松复现前沿视频理解模型
  5. IOS ViewController 生命周期
  6. 《图谋职场——最经济的图形沟通》 一种能提高职场竞争力的沟通能力
  7. cmd命令行使用ffmpeg合并mp4格式视频文件
  8. 单片机实例1——闪烁灯(硬件电路图+汇编程序+C语言程序)
  9. 电脑连不上网,WiFi没有显示出来
  10. 国家开放大学 操作系统 行测2这个答案是92分的
  11. 华为鸿蒙系统小窗口,mate30pro升鸿蒙后小窗应用调不出来
  12. 5. harbor镜像私服
  13. 使用potplayer 录制视频
  14. 【数学建模】常用微分方程模型 + 详细手写公式推导 + Matlab代码实现
  15. python网络安全应用中心_安全人员常用的python库
  16. matlab已知随机变量分布律求期望/已知概率密度求期望与方差
  17. linux 命令客户端,linux 网络客户端命令
  18. 企业带宽管理解决方案
  19. Lattice CrosslinkNx LIFCL-40应用连载5:如何使用MIPI D-PHY硬核IP
  20. 【Metashape精品教程2】创建工程

热门文章

  1. hive中文字符乱码 解决方法【转】
  2. [网络开发]服务器开发
  3. 170525、解决maven隐式依赖包版本问题
  4. laravel静态资源
  5. 黑马程序员-----内部类、匿名内部类应用
  6. Asp.net 2.0 动态加载其他子目录用户控件问题
  7. Alone in Office
  8. Qt对话框的事件循环实例分析
  9. C#的Winform多语言实现(resx文件)
  10. IOS笔记CALayer的position和anchorPoint