聪明的kk(nyoj 171)
来源:互联网 发布:python 测试脚本 编辑:程序博客网 时间:2024/05/12 18:04
聪明的kk
时间限制:1000 ms | 内存限制:65535 KB
难度:3
- 描述
………………(省略)小动物“KK”正从沙漠区域(矩形)的左上角沿着向右或向下的方向往右下角跑去。KK太聪明了,它居然能在跑的过程中会选择吃掉尽可能多的虫子线路。你知道它吃掉多少虫子吗?
- 输入
- 第一行:N M (1≤N M≤20 0≤Xij≤500(i=1,2„.N, j=1,2„,M)
)表示沙漠是一个N*M的矩形区域
接下来有N行:每行有M个正整数,Xi1 Xi2 ……Xim 表示各位置中的虫子数(单个空格隔开)
假设“KK”只能向右走或向下走。 - 输出
- 输出有一个整数, 表示“KK”吃掉最多的虫子数。
- 样例输入
3 43 1 2 85 3 4 61 0 2 3
- 样例输出
24
#include <stdio.h>int a[25][25];int dp[25][25];int max(int i, int j){return i > j ? i : j;}int main (void){int x, y, i, j;while(scanf("%d %d", &x, &y) != EOF){for(i = 0; i < x; i++)for(j = 0; j < y; j++)scanf("%d", &a[i][j]);dp[0][0] = a[0][0];for(i = 0; i < x; i++){for(j = 0; j < y; j++){if(i - 1 >= 0 && j - 1 >= 0)dp[i][j] = a[i][j] + max(dp[i][j - 1], dp[i - 1][j]);else if(i - 1 < 0)dp[i][j] = a[i][j] + dp[i][j - 1];else if(j - 1 < 0)dp[i][j] = a[i][j] + dp[i - 1][j];}}printf("%d\n", dp[x - 1][y - 1]);}return 0;}
0 0
- nyoj 171 聪明的kk
- NYOJ 171聪明的kk
- 聪明的kk(nyoj 171)
- nyoj-171-聪明的KK
- Nyoj 171 聪明的kk
- NYOJ 171 聪明的kk
- NYOJ 171 聪明的kk
- NYOJ-171 聪明的kk
- nyoj 171 聪明的kk
- nyoj-171 聪明的kk
- NYOJ 聪明的kk 171
- nyoj 171 聪明的kk
- 聪明的kk nyoj 171
- NYOJ 171 聪明的kk
- NYOJ 171 聪明的kk
- NYOJ 171 聪明的kk
- nyoj 171 聪明的kk
- NYOJ 171-聪明的kk
- poj 3159 差分约束
- 记录一点励志的话
- PL/SQL的dbms_output.put_line不显示结果解决方法
- 数据库学习之概念学习
- iOS:苹果企业证书通过网页分发安装app
- 聪明的kk(nyoj 171)
- AngularJs 的指令
- 阿里云服务器【ubuntu】Tomcat安装
- 差分约束学习
- 解析LOOKUP函数
- android解决socket接收时候的中文名乱码
- MySQL 简易序列
- XMPP 多终端登录
- 【转载】IOS block块编程