Logo HelloWorld信息学奥赛题库

少儿编程

时间限制:1 s 空间限制:512 MB

#4163. 「2017 山东二轮集训 Day1」第三题

统计

题目描述

火车沉迷垃圾手游不能自拔,他不光自己在玩碧蓝航线,还决定把你拉入坑。

你已经忍无可忍了!你决定出个难题把他按在地上摩擦!正巧你研究了斐波那契数列,也就是 $ f(0) = 0, f(1) = 1 $,否则 $ f(i) = f(i - 1) + f(i - 2) $ 的那个数列,于是你问小火车「我给你 $ n $ 个数 $ k_i $,你知道 $ f(k_i) $ 的最小公倍数吗?」让你惊讶不已的是,小火车竟然一边肝着手游一边报出了巨大的数字!你怀疑他是瞎猜的,所以想知道他回答的到底对不对,不过这个时候你就只需要知道答案对 $ 1000000007 $ 取模的结果啦!

输入格式

第一行一个正整数 $ n $。
第二行 $ n $ 个正整数表示 $ k_i $。

输出格式

一行一个整数表示答案。

样例

input

4
1 3 9 6

output

136

数据范围与提示

对于 $ 20\% $ 的数据,$ k_i \leq 50 $;
对于 $ 50\% $ 的数据,$ k_i \leq 5000 $;
对于 $ 100\% $ 的数据,$ n \leq 50000, k_i \leq 1000000 $。