【6月2日测试4】镝龟撼树
题号:NC26118
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

Rikka有一只魔法小乌龟,他的名字叫做“镝龟”。

Rikka的花园里种着n棵树,每一棵树的高度都是整数,记为h_i

我们定义一种行为叫做“撼”。在每一次“撼”中,镝龟选定一棵高度超过1的树(高度记为h, h > 1),然后对它施加魔法,原来的这棵树在镝龟施加魔法之后就会消失,同时出现五棵高度分别为、1、h - 1、的树。

镝龟很调皮,他一旦看到有树的高度大于1,他就会去撼一撼这棵树。也就是说,镝龟会一直“撼树”直到所有的树高度都变为1为止。

现在Rikka把镝龟关在了她的花园里,她想知道经过足够长的时间之后,花园里还剩下几棵树。

请你来帮助Rikka解决这个问题。

**请注意:在本题中,所有的均向下取整。**

输入描述:

输入包含两行。
第一行为一个整数n,表示Rikka花园里的树的数量。
第二行包含n个整数h_1 - h_n,一个整数表示一棵树的高度。

输出描述:

输出包含一行一个整数,即花园里最终剩下的树的数量。
由于Rikka无法计算很大的数字,你只需要告诉她这个答案对20190602取模后的结果。
示例1

输入

复制
2
5 10

输出

复制
214

备注:

对于所有的测试数据,保证 

测试点               n
1 ~ 7              
8 ~ 10