博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ 1163解题报告
阅读量:4205 次
发布时间:2019-05-26

本文共 1002 字,大约阅读时间需要 3 分钟。

POJ 3176和这道题是同一道题。

这道题是道简单的动态规划题,从上往下扫描即可。arr[i][j] = max(arr[i - 1][j - 1], arr[i - 1][j]) + arr[i][j];

空间有节省的地方,就是输入的时候直接处理,不必等到整个存储完了再按行进行处理,因为当前行只与前面一行有关。

#include 
#include
#include
#include
#include
#include
#include
#include
using namespace std;int arr[100][100];int main(){// FILE *fin, *fout;// fin = fopen("numtri.in", "r");// fout = fopen("numtri.out", "w");// assert(fin != NULL && fout != NULL); int r; fscanf(stdin, "%d", &r); //fscanf(fin, "%d", &r); //int cnt = 0; for(int i = 0; i < r; ++i) { for(int j = 0; j < i + 1; ++j) { //fscanf(fin, "%d", &arr[i][j]); fscanf(stdin, "%d", &arr[i][j]); } } for(int i = 1; i < r; ++i) { arr[i][0] = arr[i - 1][0] + arr[i][0]; for(int j = 1; j < i + 1; ++j) { arr[i][j] = max(arr[i - 1][j - 1], arr[i - 1][j]) + arr[i][j]; } } int max = 0; for(int i = 0; i < r; ++i) { if(arr[r - 1][i] > max) max = arr[r - 1][i]; } fprintf(stdout, "%d\n", max); //fprintf(fout, "%d\n", max); return 0;}

转载地址:http://oxxli.baihongyu.com/

你可能感兴趣的文章
Web安全测试解决方案
查看>>
今天开始上班
查看>>
开源测试研究方案泡汤了
查看>>
晒一下我培训的课程——应用系统性能测试规划、实施与分析
查看>>
利用 STAF 实现程序更新包的自动部署测试
查看>>
周末参加“北京干部管理职业技术学院”关于高职课程改革的专家讨论会
查看>>
软件自动化测试框架的发展
查看>>
实现haproxy+LNMT负载均衡架构
查看>>
论文浅尝 | 通过共享表示和结构化预测进行事件和事件时序关系的联合抽取
查看>>
论文浅尝 | 融合多粒度信息和外部语言知识的中文关系抽取
查看>>
论文浅尝 | GMNN: Graph Markov Neural Networks
查看>>
廖雪峰Python教程 学习笔记3 hello.py
查看>>
从内核看epoll的实现(基于5.9.9)
查看>>
python与正则表达式
查看>>
安装.Net Framework 4.7.2时出现“不受信任提供程序信任的根证书中终止”的解决方法
查看>>
input type=“button“与input type=“submit“的区别
查看>>
解决Github代码下载慢问题!
查看>>
1.idea中Maven创建项目及2.对idea中生命周期的理解3.pom文件夹下groupId、artifactId含义
查看>>
LeetCode-栈|双指针-42. 接雨水
查看>>
stdin,stdout,stderr详解
查看>>