NYOJ - The Triangle

26 篇文章 0 订阅
描述

7
3 8
8 1 0
2 7 4 4
4 5 2 6 5
(Figure 1)
Figure 1 shows a number triangle. Write a program that calculates the highest sum of numbers passed on a route that starts at the top and ends somewhere on the base. Each step can go either diagonally down to the left or diagonally down to the right.

输入
Your program is to read from standard input. The first line contains one integer N: the number of rows in the triangle. The following N lines describe the data of the triangle. The number of rows in the triangle is > 1 but <= 100. The numbers in the triangle, all integers, are between 0 and 99.
输出
Your program is to write to standard output. The highest sum is written as an integer.
样例输入
5
7
3 8
8 1 0 
2 7 4 4
4 5 2 6 5
样例输出
30


一道经典的动态规划问题【外号:我的第一道动态规划!】

#include <cstdio>

int a[105][105];
int b[105][105];
int maxn(int a, int b)
{
    return a > b ? a : b;
}

int main()
{
    int n;
    while (scanf("%d", &n) != EOF)
    {
        for (int i = 1; i <= n; ++i)
        {
            for (int j = 1; j <= i; ++j)
            {
                scanf("%d", &a[i][j]);
            }
        }
        int ans;
        for (int i = 1; i <= n; ++i)
            b[n][i] = a[n][i];
        for (int i = n-1; i > 0; --i)
        {
            for (int j = 1; j <= i; ++j)
            {
                b[i][j] = maxn(b[i+1][j], b[i+1][j+1]) + a[i][j];
            }
        }
        ans = b[1][1];
        printf("%d\n", ans);
    }
    return 0;
}


目录 第1 章HTML 基础·1 1.1 HTML 语言简介·· 1 1.2 HTML 语言中的标记码·· 1 1.2.1 标记码简介1 1.2.2 文件标记码2 1.2.3 排版标记码3 1.2.4 字体标记····6 1.2.5 清单标记····8 1.2.6 表格标记····9 1.2.7 表单标记13 1.2.8 图形标记··18 1.2.9 框架标记··19 1.2.10 链接标记21 1.2.11 多媒体···· 22 1.2.12 其他标记24 1.2.13 特殊字符24 1.3 Dreamweaver MX 的使用······26 1.3.1 Dreamweaver MX 简介26 1.3.2 Dreamweaver MX 使用26 第2 章层叠样式表CSS 33 2.1 CSS 简介·33 2.2 CSS 基本语法·····33 2.3 CSS 的放置·34 2.3.1 内联样式表··35 2.3.2 外部样式表··35 2.4 文本属性36 2.5 颜色与背景属性37 2.6 创建CLASS······ 39 2.7 超链接····40 2.8 Dreamweaver MX 定义CSS· 42 2.8.1 定义CSS 样式表·42 2.8.2 CSS 样式面板·······43 2.8.3 创建CSS 样式·····45 2.8.4 附加外部CSS 样式表 45 ii 2.8.5 样式表应用举例··47 第3 章PHP 概述·55 3.1 PHP 的历史 55 3.2 PHP 的工作原理 56 3.3 PHP 的功能概述 56 3.4 PHP 的安装、配置及管理···· 57 3.4.1 安装前的准备······57 3.4.2 安装过程··58 3.4.3 AppServ 的使用····61 3.5 PHP 开发工具简介 65 第4 章PHP 入门·69 4.1 一个简单的PHP 程序·· 69 4.2 PHP 代码在HTML 中的嵌入形式···70 4.3 PHP 语句分隔···· 71 4.4 程序注释71 4.5 引用文件72 第5 章PHP 的数值类型和运算符···· 73 5.1 数值类型73 5.1.1 布尔型······73 5.1.2 整型··74 5.1.3 浮点型······74 5.1.4 字符串······74 5.1.5 数组··75 5.1.6 对象··77 5.1.7 资源··77 5.1.8 NULL 77 5.2 常量78 5.2.1 PHP 预定义常量·· 78 5.2.2 用户定义常量······79 5.3 变量79 5.3.1 预定义变量··80 5.3.2 自定义变量的初始化··80 5.3.3 变量的范围··81 5.3.4 活动变量··83 5.3.5 外界PHP 变量···· 84 5.4 运算符····85 iii 5.4.1 算术运算符··85 5.4.2 赋值运算符··86 5.4.3 位运算符··86 5.4.4 逻辑运算符··86 5.4.5 比较运算符··87 5.4.6 错误控制运算符··87 5.4.7 自增(自减)运算符··87 5.4.8 字符串连接运算符······88 5.4.9 运算符的优先顺序和结合规则······ 89 第6 章PHP 的基本控制语句···· 90 6.1 表达式····90 6.1.1 简单表达式··90 6.1.2 有副作用的简单表达式··90 6.1.3 复杂表达式··90 6.2 分支控制语句····91 6.2.1 if 语句······· 91 6.2.2 else 语句····91 6.2.3 elseif 语句· 92 6.2.4 if 语句的交互语法if…endif··· 92 6.2.5 switch 语句··· 93 6.3 循环控制语句····95 6.3.1 while 语句·95 6.3.2 do...while 语句······95 6.3.3 for 语句····· 97 6.3.4 break 语句·99 6.3.5 continue 语句······101 6.4 函数······102 6.4.1 返回值····102 6.4.2 参数102 6.4.3 变量函数103 第7 章PHP 实用小程序·· 105 7.1 文本计数器······105 7.1.1 PHP 的文件操作······ 105 7.1.2 文本计数器106 7.2 计数器的使用··107 7.3 图形计数器······109 iv 7.4 月历······110 7.4.1 程序 112 7.4.2 程序说明115 第8 章MySQL 数据库···117 8.1 MySQL 的特点·117 8.2 MySQL 基础·····117 8.2.1 MySQL 数据库连接···118 8.2.2 数据类型和数据表····120 第9 章图形化管理MySQL——phpMyAdmin······ 125 9.1 phpMyAdmin 简介·······125 9.2 phpMyAdmin 的基本操作···125 9.3 用phpMyAdmin 创建数据库·129 9.3.1 xinfei 数据库基本结构·· 129 9.3.2 用phpMyAdmin 建立用户基本信息表·131 9.3.3 用phpMyAdmin 建立用户详细信息表·136 9.3.4 用phpMyAdmin 建立在线用户信息表·136 9.4 数据库、表的删除······138 9.4.1 数据表的删除操作····138 9.4.2 数据库的删除操作····138 第10 章PHP 与MySQL 的协同工作 140 10.1 PHP 的MySQL 数据库函数·140 10.1.1 数据库连接函数······141 10.1.2 数据库查询函数······144 10.1.3 返回值处理函数······145 10.1.4 其他函数··150 10.2 PHP 的记录操作 151 10.2.1 查询记录··152 10.2.2 插入记录··155 10.2.3 修改记录··157 10.2.4 删除记录··159 第11 章用户注册与登录······· 161 11.1 数据库的准备161 11.1.1 数据库结构······161 11.1.2 用phpMyAdmin 创建用户数据库·······162 11.1.3 数据库的连接··163 11.2 注册页面163 v 11.2.1 制作前台Web 页面·164 11.2.2 制作后台PHP 页面 170 11.2.3 申请结果的显示······173 11.3 登录页面175 11.3.1 登录页面的实现······176 11.3.2 后台程序的完成······178 11.3.3 提示程序的建立······182 第12 章网上调查185 12.1 调查数据表的建立····185 12.1.1 网上调查的框架····· 185 12.1.2 数据表的建立··185 12.2 网上调查的添加和删除··· 186 12.2.1 网上调查管理界面的实现· 187 12.2.2 网上调查的添加和删除······191 12.2.3 网上调查管理界面的完整程序· 194 12.3 网上调查的开始196 12.4 网上调查表格的生成······· 198 12.4.1 生成网上调查的数据··198 12.4.2 网上调查的页面······199 12.4.3 网上调查数据的修改··201 12.4.4 网上调查的完整程序··202 12.5 网上调查结果的显示······· 203 第13 章聊天室207 13.1 聊天室数据结构的建立··· 207 13.2 聊天室的实现208 13.2.1 聊天室实现的基本步骤····· 208 13.2.2 基础准备工作· 209 13.2.3 聊天室的用户登录· 210 13.2.4 聊天室框架的建立· 214 13.2.5 聊天室发言添加的实现过程····· 215 13.2.6 聊天室发言内容的显示····· 217 13.2.7 聊天室在线网友名单的显示····· 218 13.2.8 聊天室的退出过程· 219 13.2.9 聊天室的运行实例· 220 第14 章新闻及搜索系统······· 222 14.1 新闻系统数据结构的建立··· 222 vi 14.2 新闻及搜索系统的实现··· 223 14.2.1 样式表··223 14.2.2 新闻的录入页面······224 14.2.3 新闻的站内搜索······226 第15 章PHP 的面向对象编程 229 15.1 类229 15.2 继承·····231 15.3 构造函数232 15.4 析构函数235 15.5 ::范围解析操作符······ 236 15.6 parent···237 15.7 序列化对象·····238 15.8 魔术函数__sleep 和__wakeup·239 15.9 构造函数中的引用·····239
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值