C03 - Stock Queries
Editorial
/
Time Limit: 1 sec / Memory Limit: 1024 MB
配点: 1000 点
問題文
株式会社 KYOPRO-MARKET は上場から D 日が経過しました。1 日目の株価は X 円であり、i = 2,3, ... ,D について、i 日目の株価は前日よりも A_i 円だけ高かったです(A_i が負の数である場合、安くなったことを意味します)。
「S_j 日目の株価と T_j 日目の株価はどちらの方が高いか?」という形式の質問が Q 個与えられるので、それぞれの質問に答えるプログラムを作成してください。
計算量は O(D + Q) であることが望ましいです。
制約
- 入力はすべて整数
- 2 \leqq D \leqq 2 \times 10^5
- 1 \leqq X \leqq 10^9
- -5\,000 \leqq A_i \leqq 5\,000 (2 \leqq i \leqq D)
- 1 \leqq Q \leqq 2 \times 10^5
- 1 \leqq S_j < T_j \leqq D (1 \leqq j \leqq Q)
- 上場以降どの日の株価も 1 以上である
入力
入力は以下の形式で標準入力から与えられます。
D X A_2 \vdots A_D Q S_1 T_1 \vdots S_Q T_Q
出力
標準出力に Q 行出力してください。j 行目には、j 番目の質問に関する答えを次のように表して出力してください。
- S_j 日目の株価が T_j 日目の株価よりも高い場合、S_j の値。
- T_j 日目の株価が S_j 日目の株価よりも高い場合、T_j の値。
- S_j 日目の株価と T_j 日目の株価が等しい場合、
Same
。
入力例 1
5 30 -10 20 -10 20 3 1 2 3 5 1 4
出力例 1
1 5 Same
5 日ぞれぞれの株価は以下の通りになります。
- 1 日目の株価は X = 30。
- 2 日目の株価は 30 - 10 = 20。
- 3 日目の株価は 20 + 20 = 40。
- 4 日目の株価は 40 - 10 = 30。
- 5 日目の株価は 30 + 20 = 50。
3 つそれぞれの質問の答えは次のようになります。
- 1 日目の株価は 2 日目の株価よりも高い。したがって、1 行目には 1 を出力する。
- 5 日目の株価は 3 日目の株価よりも高い。したがって、2 行目には 5 を出力する。
- 1 日目の株価と 4 日目の株価は等しい。したがって、3 行目には
Same
を出力する。