AT_wupc2012_4.三角パズル

普及-

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

在你忙碌的过程中,压缩文件的解压似乎已经完成了。你打开一看,发现了一个包含按直角三角形排列的数列的文本文件。

例如:

7
2 3
1 5 4

看起来,这是一个从最上方的顶点出发,每次只能选择往下一层的正下方或右下方的数字,直到底边为止,要求出路径上数字之和的最大值的问题。这很简单。在上面的例子中,选择 7→3→57 \to 3 \to 5 是最优的,合计为 1515。

不过,这样的文件有很多,有的甚至有 100 层的数据。看来,只有解出这个问题才能获得参赛资格……?不对,这其实是一个编程竞赛的邀请函。只要写一个程序,输入数列后能求出最大值就行了。大概邀请你的人也是这么想的。

给定如下按直角三角形排列的数列。从顶点出发,每次只能选择下一层的正下方或右下方的数字,直到底边为止。请计算路径上数字之和的最大值。

例如,给定如下数列:

3
7 4
2 4 6
8 5 9 3

如果正确选择路径,则为:

3
7 4
2 4 6
8 5 9 3

合计为 3+7+4+9=233 + 7 + 4 + 9 = 23。

输入以如下格式从标准输入给出。

输入格式

NN
a1,1a_{1,1}
a2,1 a2,2a_{2,1}\ a_{2,2}
a3,1 a3,2 a3,3a_{3,1}\ a_{3,2}\ a_{3,3}
⋯\cdots
ai,1 ai,2 ⋯ ai,ia_{i,1}\ a_{i,2}\ \cdots\ a_{i,i}
⋯\cdots
aN,1 aN,2 ⋯ aN,Na_{N,1}\ a_{N,2}\ \cdots\ a_{N,N}

  • 第 11 行给出直角三角形的高度 NN(1≤N≤1001 \leq N \leq 100)。
  • 第 ii 行(2≤i≤N+12 \leq i \leq N+1)有 i−1i-1 个用半角空格分隔的整数。
  • 数列中的数字满足 0≤ai,j≤1000 \leq a_{i,j} \leq 100(1≤j≤i≤N1 \leq j \leq i \leq N)。

请输出路径上数字之和的最大值,输出为一行。

在 100 分中,有 50 分的数据满足 N≤20N \leq 20。

输出格式

输出一行,表示路径上数字之和的最大值。

说明/提示

无。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页