問題文
高さ 109 マス,幅 N マスのグリッドを考え,左から i(1leqileqN) 番目,下から j(1leqjleq109) 番目のマス目を (i,j) と表すことにします。
すぬけ君は各 i=1,2,...,N について,左から i 列目のマスたちを,下から hi 個を残すように切り取りました。 そして赤,青の絵の具を使い,マス目を絵の具で塗ります。 以下の条件を満たすような塗り分け方は何通りか求めて下さい。ただし答えは非常に大きくなるので,109+7 で割った余りを出力して下さい。
- 全ての(切り取った後に残された)マスたちは,赤,青のどちらかの色に塗られている。
- 全ての 1leqileqN−1, 1leqjleqmin(hi,hi+1)−1 について,(i,j),(i,j+1),(i+1,j),(i+1,j+1) の4マスのなかにちょうど 2 個ずつ赤色と青色のマスが存在する。
制約
- 1leqNleq100
- 1leqhileq109
入力
入力は以下の形式で標準入力から与えられる。
N
h1 h2 ... hN
出力
塗り分け方の個数を 109+7 で割った余りを出力せよ。
入力例 1
9
2 3 5 4 1 2 4 2 1
出力例 1
12800
以下に塗り分け方の一例を示します。
#```