对布满灰尘的西洋棋宣告将军 (chess)
题目描述
这里没有你。
【问题描述】
布洛瓦侯爵想利用维多利加来占卜二战的局势。侯爵只给了她一盘西洋棋和 许多书,便将她关在了王宫的地牢。
西洋棋盘可以看成一个 N*M 的网格。西洋棋可以摆放在任何一个格子里, 而不是网格线的交叉点上。
维多利加将一个棋子放在了左上角的格子上。她试着移动这个棋子,棋子只 会向右或者向下移动。
每个格子有一个权值,维多利加想知道,从左上角到右下角的所有路径中:
1.经过的格子的权值和最大是多少?
2.权值和最大的路径一共有多少条?
输入
接下来 N 行,每行 M 个整数,表示每个格子的权值。
输出
样例输入
3 3 1 1 1 1 2 1 1 1 1
样例输出
6 4
数据范围限制
30%的数据保证,N≤5,M≤5。
60%的数据保证,N≤100,M≤100。
另有 20%的数据保证,对于任意的 i 和 j,Ai,j = 1。
100%的数据保证,N≤2000,M≤2000,|Ai,j|≤10^9。
[4]对布满灰尘的西洋棋宣告将军(chess)
这是一题dp,就像数字三角形一样,因为他只能从右边或上面得来,所以我们要判断找出他上面和右边之间的最大值,然后就用f[i,j,2]来计算这个最大的个数。最后直接输出就行了。
![](https://code.csdn.net/assets/CODE_ico.png)
- function max(a,b:longint):longint;
- begin
- if a>b then
- begin
- f[i,j,2]:=f[i,j-1,2];
- exit(a);
- end;
- if a<b then
- begin
- f[i,j,2]:=f[i-1,j,2];
- exit(b);
- end;
- if a=b then
- begin
- f[i,j,2]:=(f[i,j-1,2]+f[i-1,j,2])mod 1000000007;
- exit(b);
- end;
- end;
![](https://code.csdn.net/assets/CODE_ico.png)
- <pre name="code" class="plain">for i:=1 to n do
- for j:=1 to m do
- read(a[i,j]);
- for i:=1 to n do f[i,0,2]:=1;
- for i:=1 to n do
- begin
- for j:=1 to n do
- begin
- if (i>1)and(j>1) then f[i,j,1]:=max(f[i,j-1,1],f[i-1,j,1])+a[i,j];
- if i=1 then
- begin
- f[i,j,1]:=f[i,j-1,1]+a[i,j];
- f[i,j,2]:=1;
- end;
- if j=1 then
- begin
- f[i,j,1]:=f[i-1,j,1]+a[i,j];
- f[i,j,2]:=1;
- end;
- end;
- end;
- writeln(f[n,m,1]);
- writeln(f[n,m,2]);
对布满灰尘的西洋棋宣告将军 (chess)相关推荐
- 2047. 对布满灰尘的西洋棋宣告将军
2047. 对布满灰尘的西洋棋宣告将军 题目描述 维多利加:这里的确有许多书,但是-- 这里没有你. [问题描述] 布洛瓦侯爵想利用维多利加来占卜二战的局势.侯爵只给了她一盘西洋棋和 ...
- 对布满灰尘的西洋棋宣告将军_纪中2047_dp
题目描述 维多利加:这里的确有许多书,但是-- 这里没有你. 布洛瓦侯爵想利用维多利加来占卜二战的局势.侯爵只给了她一盘西洋棋和 许多书,便将她关在了王宫的地牢. 西洋棋盘可以看成一个 N*M 的网格 ...
- T266691 对布满灰尘的西洋棋宣告将军
觉得写这道(水)题题解的人挺少的,那我就来发一篇c++的吧 首先题目描述: 布洛瓦侯爵想利用维多利加来占卜二战的局势.侯爵只给了她一盘西洋棋和 许多书,便将她关在了王宫的地牢. 西洋棋盘可以看成一个 ...
- POJ_2488(DFS算法,西洋棋)
POJ_2488,dfs西洋棋问题,同马走日(POJ_4123) #include <iostream> #include <cstring> #include <cma ...
- 继西洋棋大师、魔术方块之后 人工智能挑战迭迭乐游戏
借助机器学习和算法模型等,机器人已成为西洋棋大师,魔术方块记录刷新者.MIT麻省理工学院的科学家研制的新机器人的挑战项目是「迭迭乐(Jenga)游戏」,别看迭迭乐规则看似简单,但是对动手能力和思维策略 ...
- 在西洋棋、将棋打败人类之后,电脑也将在围棋战胜人类
1997 年,在 IBM 的深蓝战胜西洋棋世界冠军 Garry Kasparov 之后,<时代>杂志提出了一项新的挑战:让电脑与人类下围棋吧,它获胜的机会很小."电脑要在围棋上战 ...
- 【人工智能简史】第二章 早期实验与尝试——图灵测试与图灵机器、逻辑理论机与麦卡锡、第一个人工智能程序:塞缪尔的西洋棋程序
目录 第二章 早期实验与尝试 / <人工智能简史> 概述 图灵测试与图灵机器
- java四连环游戏编程_Java实现四连环棋游戏
本文实例为大家分享了Java实现四连环棋游戏的具体代码,供大家参考,具体内容如下 游戏规则: (1)双人游戏,有黑红两色棋子,双方各执一色棋子. (2)空棋局开盘,黑棋先发,从最上面一行开始下,棋子会 ...
- 基于Alpha-Beta剪枝树的井字棋人机博弈实现
1 Alpha-Beta剪枝树的简单介绍 Alpha-Beta剪枝的本质就是基于极小化极大算法的一种改进算法.因此先简单地介绍下极小化极大算法,这样有利于我们更好的理解Alpha-Beta剪枝算法. ...
最新文章
- 扩增子统计绘图7三元图
- 数据分析必备:掌握这个R语言基础包1%的功能让你事半功倍!(附代码)
- SeetaFace2 测试
- Learning to Rank 中Listwise关于ListNet算法讲授及实现
- 在eclipse中如何查看JAVA JDK的源代码
- 1028 人口普查 (20 分)(c语言)
- 登陆界面(jsp)客户端验证
- 22张令人叹为观止的照片,你所未知的另一面
- mysql 半同步 主主_MySQL主从,半同步,主主复制
- 18-mysql-数据类型
- 函数式编程 -- 测试题集
- 【华为云技术分享】圣诞特别版 | 数据库频频出现OOM问题该如何化解?
- Xcode的编译/运行结果保存的路径
- C语言面试题分类-位运算
- 为什么一般都使用 List list = new ArrayList() ,而不用 ArrayList alist = new ArrayList()呢?...
- e.style.opacity 通过javascript调用元素的样式属性
- Recommender Sys Interview Qs
- ReactNative 仿造 ofo 共享单车快速开发的app
- hyperscan5.0编译方式整理
- 数值分析-LU三角分解
热门文章
- 员工考勤系统业务建模+系统用例图
- python金融量化 pdf_python量化交易pdf,Python和金融分析的关系?量化交易内容深度?...
- VIVO一面竟然翻车,十年Java编程开发生涯
- 一个函数有多少行代码比较合适?
- g40-45支持虚拟化技术_速龙II X4 641支持虚拟化技术吗
- 美创科技荣获中国计算机行业协会数据安全专业委员会“优秀成员单位”
- Spring-Spring Web项目中配置使用Log4j 2
- 别再让知识星球消耗你的影响力!
- Android直播推流学习
- 一个前端人眼中的区块链