AtCoder Regular Contest 043
B
難易度
AtCoder
⌀ 1606
原题
← AC →
翻译中…

Problem Statement

翻译中…

高橋君はプログラミングコンテストを開く仕事をしている。

翻译中…

高橋君はストックしている $N$ 個の問題から $4$ 問を選んでコンテストに出題する。

翻译中…

各問題には「難易度」という正の整数が決められており、 $i$ 番目の問題の難易度は $D_i$ である。

翻译中…

選ぶ問題は以下の $3$ つの条件を満たしていなければならない。

翻译中…
  • $2$ 問目の難易度は $1$ 問目の難易度の $2$ 倍以上である。
  • $3$ 問目の難易度は $2$ 問目の難易度の $2$ 倍以上である。
  • $4$ 問目の難易度は $3$ 問目の難易度の $2$ 倍以上である。
翻译中…

上の条件のもとで $N$ 個の問題から $4$ 問選ぶとき、何通りの選び方があるか求めよ。

翻译中…

この値は非常に大きくなり得るので $1,000,000,007 (= 10^9 + 7)$ で割った余りを求めよ。

翻译中…

Input

翻译中…

入力は以下の形式で標準入力から与えられる

翻译中…

N
D_1
D_2
:
D_N

翻译中…
  • $1$ 行目には高橋君がストックしている問題の個数 $N (4 ≦ N ≦ 10^5)$ が与えられる。
  • $2$ 行目からの $N$ 行のうち $i$ 行目には $i$ 番目の問題の難易度を表す整数 $D_i (1 ≦ D_i ≦ 10^5)$が与えられる。
翻译中…

部分点

翻译中…

この問題には部分点が設定されている。

翻译中…
  • $4 ≦ N ≦ 3,000$ を満たすデータセットに正解した場合は $50$ 点が与えられる。
  • $4 ≦ N ≦ 10^5$ を満たすデータセットに正解した場合はさらに $50$ 点が与えられる。合計で $100$ 点となる。
翻译中…

Output

翻译中…

高橋君の問題の選び方の通り数を $1,000,000,007(=10^9+7)$ で割った余りを1行で出力せよ。 出力の末尾に改行を入れること。

翻译中…

样例

Input #1
5
1
2
4
5
10
Output #1
2
$1, 2, 3, 5$ 問目もしくは $1, 2, 4, 5$ 問目を選ぶことができます。
Input #2
10
11
12
13
14
15
16
17
18
19
20
Output #2
0
$1$ つも条件に合う選び方がないこともあります。
Input #3
20
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Output #3
94
题目信息
题号
arc043_b
时间限制
2 s
内存限制
256 MB

题面与样例版权归 AtCoder 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。