#abc0062. [abc006_2]トリボナッチ数列

[abc006_2]トリボナッチ数列

問題文

トリボナッチ数列というものがあります。この数列は3つ前までの数字を足したものです。
厳密には、

  1. a1=0a_1 = 0, a2=0a_2 = 0, a3=1a_3 = 1
  2. an=an1+an2+an3a_n = a_{n-1} + a_{n-2} + a_{n-3}

と定義されています。参考までに、トリボナッチ数列表を掲載します。

a1a_1

a2a_2

a3a_3

a4a_4

a5a_5

a6a_6

a7a_7

a8a_8

......

ana_n

0

0

1

1

2

4

7

13

......

an1+an2+an3a_{n-1}+a_{n-2}+a_{n-3}

この数列の第 nn 項、ana_n1000710007 で割った余りを求めてください。


入力

入力は以下の形式で標準入力から与えられる。nn 整数 n(1n106)n(1≦n≦10^6)11 行で与えられる。

出力

トリボナッチ数列の第 nn 項、ana_n1000710007 で割った余りを 11 行で出力してください。

また、出力の末尾には改行を入れること。


入力例 1


7

出力例 1


7
  • 77 番目のトリボナッチ数は 77 です。

入力例 2


1

出力例 2


0
  • 最初のトリボナッチ数は 00 です。

入力例 3


100000

出力例 3


7927
  • ana_n1000710007 で割った余りを出力することに気をつけてください。