在庫の更新
ショップには、それぞれ異なる価格を持つ
n
個の商品があります。お客さんがある商品を購入した際に、その商品を取り除いたあとの在庫の中で、一番安い商品と一番高い商品が何かを素早く知りたいと考えています。そこで、在庫の各商品を一つ取り除いた場合に、そのときの最安値と最高値を求めるプログラムを実装するよう依頼されました。なお、商品を取り除く操作はそれぞれ独立して行います。つまり、ある商品を取り除くときは、そのほかの商品は元のままであるとみなします。 入力
最初の行には整数
n
が与えられます。これはショップにある商品の数を表し、(1 ≤ n ≤ ) を満たします。次の行には、スペース区切りで
n
個の整数が与えられます。これは各商品の価格を表し、 の条件を満たします。 出力
出力は
n
行とし、各行 i
には「商品 i
を取り除いたあとの在庫の最安値」と「最高値」の2つの値をスペース区切りで出力してください。 Examples
入力 | 出力 |
5
6 8 1 10 3 | 1 10
1 10
3 10
1 8
1 10 |
Constraints
Time limit: 4 seconds
Memory limit: 512 MB
Output limit: 10 MB