本题使用标准输入、标准输出,无需读写题面中提到的文件。
题目描述
Bessie 有一个数组 a1,…,aN,其中 1≤N≤300 且对所有 i 有
0≤ai≤109。她不会告诉你数组 a 本身,但她会告诉你 a 的每个子数组的极差。
也就是说,对每一对下标 i≤j,Bessie 告诉你
ri,j=maxa[i…j]−mina[i…j]。
给定这些 r 的值,请构造一个可能是 Bessie 原始数组的数组。你构造的数组元素必须在区间
[−109,109] 内。
输入格式
第一行包含 N。
接下来有 N 行。第 i 行包含整数
ri,i,ri,i+1,…,ri,N。
保证存在某个取值在区间 [0,109] 内的数组 a,使得对所有 i≤j,
ri,j=maxa[i…j]−mina[i…j]。
输出格式
输出一行,包含 N 个整数 b1,b2,…,bN,每个都在区间
[−109,109] 内,表示你构造的数组。它们必须满足对所有 i≤j,
ri,j=maxb[i…j]−minb[i…j]。
3
0 2 2
0 1
0
1 3 2
3
0 1 1
0 0
0
0 1 1
4
0 1 2 2
0 1 1
0 1
0
1 2 3 2
4
0 1 1 2
0 0 2
0 2
0
1 2 2 0
提示
例如,$r_{1, 3} = \max a[1\ldots 3] - \min a[1\ldots 3] = 3 - 1 = 2$。
该样例满足子任务 1 的限制。
该样例满足子任务 2 的限制。
计分:
测试点 5 满足 r1,N≤1。
测试点 6-8 满足对所有 1≤i<N,都有 ri,i+1=1。
测试点 9-14 没有额外限制。
题目致谢:Danny Mittal
来源
USACO|2022|Silver