No.404 部分門松列
問題文
門松列 とは
は全て異なる つの要素の中で が最も大きい、または、 が最も小さい
与えられた数列の要素数3の部分列(連続でなくてもよい)のうち, 門松列であるものを部分門松列と呼ぶことにします.
このとき, 各クエリに対して, 真ん中の要素 (上の例における
ただし, 部分列の各要素は並び替えてはいけません.
また, 取り出した部分列の各要素が同じでも, 取り出した位置が異なれば別々に数えることとします.
入力
:
1行目に, 数列の要素数
続いて2行目に, 数列の各要素の値
続いて3行目に, クエリの数
続いて4行目から
入力は, 以下の制約を満たします.
なお, 部分点などはありませんが, 1_small*.inは
出力
出力は
最後に改行してください.
サンプル
サンプル1
入力
4 1 4 2 3 4 3 4 5 8 2 4 1 1
出力
2 0 3 0
要素数3の部分列は {1, 4, 2}, {1, 4, 3}, {1, 2, 3}, {4, 2, 3} の4通りで,
{1, 2, 3} 以外は門松列になっています.
よって, 部分門松列は {1, 4, 2}, {1, 4, 3}, {4, 2, 3} の3通りです.
サンプル2
入力
5 1 1 1 4 2 4 1 3 3 6 4 4 4 8
出力
0 3 3 3
{1, 4, 2} という部分列が3通り作れます.
サンプル3
入力
6 1 1 4 5 1 4 3 1 4 2 3 1 14514
出力
1 0 4
サンプル4
入力
1 1 1 1 1
出力
0
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。