atcoder#ARC152C. [ARC152C] Pivot
[ARC152C] Pivot
题目描述
項からなる数列 があります。 あなたはこれから、この数列に以下の操作を好きな回数行うことができます。( 回も行わなくてもよいです。)
- その時点の数列から項を つ選び、その値を とする。 次に、全ての に対して、 を で置き換える。 ただし、この操作によって、数列に負の値を持つ項が生じてはならない。
あなたは、数列の項の最大値をできるだけ小さくしたいと考えています。 適切に操作を行った場合の、数列の項の最大値はいくつになるでしょうか。
输入格式
入力は以下の形式で標準入力から与えられる。
输出格式
答えを整数で出力せよ。
题目大意
给你一个 项的数列,你可以对其做任意次如下的操作(也可以不做):
选择序列里面的一项,令其值为 ,对于每一个数列里面的每一项 ,将 替换为 。操作完的序列必须是非负整数
希望让这个序列的最大值最小化,求最优的操作后的序列中最大值。
Translation by Ziqqurat.
3
1 3 6
5
5
400 500 600 700 800
400
提示
制約
- $ 1\ \leq\ a_1\ <\ a_2\ <\ \ldots\ <\ a_N\ \leq\ 10^9 $
- 入力される値はすべて整数である
Sample Explanation 1
として操作を行うと、数列は になります。このとき最大値は です。 数列に負の項が生じてはいけないという条件の下で、これ以上数列の項の最大値を小さくすることはできませんので、 と答えてください。
Sample Explanation 2
として操作を一度行うほか、 として操作を行った後、 としてもう一度操作を行うなどの方法が考えられます。