EOJ 1824 Solution Report - 数塔 III
来源:互联网 发布:米思米软件安装教程 编辑:程序博客网 时间:2024/05/24 06:55
原文地址:http://linus-young.github.io/blog/2014/04/15/eoj-1824-solution-report-shu-ta-iii/
原题:EOJ 1824
1. 题目描述:
一个正整数组成的三角形,第一行只有一个数, 除了最底行之外每个数的左下方和右下方各有一个数。如下图
1 3 2 4 10 14 3 2 20
从第一行的数开始, 每次都只能左下或右下走一格, 直到走到最下行, 将沿途经过的数加起来,求和的个位数最大是多少。
Note:
每行的数范围是
2. 解题思路
本题不满足最优子结构(两个数的个位数字之和可能为两位数),因为和的个位数字只可能是 0 - 9 其中的一个,改用如下状态定义:
d[i][j][k] 表示以 (i, j) 为根的子三角形的所有数之和的个位数若有为 k 的路径则取值为1, 否则取值为0(其中 k 为 0-9 )
则解为满足 d[1][1][k] = 1 的最大 k 值。
初始数组 d 全部为 0, 从最底下一层开始算起,根据个位数字模 10 的情况,设置数组某些位为 1。 然后从下往上往左往右加,只需注意个位数字相加后模 10 即可,设置对应位为 1。
代码如下:
2 0
- EOJ 1824 Solution Report - 数塔 III
- EOJ 1855 Solution Report - Expedition
- EOJ 1852 Solution Report --Ordered Fractions
- EOJ 2067 Solution Report - Building Roads
- EOJ 1488 Solution Report - Coin Collector
- EOJ 3290 找数(III) (模拟+简单数字串)
- POJ 3253 Solution Report
- POJ 1160 Solution Report
- EOJ-----重复数
- EOJ 2006 孤独数
- acm ural [1066] Garland solution report
- EOJ 1824 【动态规划】
- EOJ
- EOJ
- EOJ
- Lintcode43 Maximum Subarray III solution 题解
- Lintcode48 Majority Number III solution 题解
- LeetCode 260. Single Number III Python Solution
- linux 内存泄露检测工具valgrind
- JavaScript基础工具清单
- poj 2826 An Easy Problem?!(计算几何)
- [HTML5] 【CSS】最全的CSS浏览器兼容问题
- 教你在office2010里使用MathType 6.7
- EOJ 1824 Solution Report - 数塔 III
- web前端开发总结性文章
- Fiddler 教程
- talend mysql数据导入出现乱码(?)
- 全国云计算大数据创新项目评选”征集活动正式启动
- C++: __declspec关键字详细用法
- android camera 架构浅析
- C语言位操作
- Android SwipeRefreshLayout