问题 3247 --邮票收集(stamp)

3247: 邮票收集(stamp)

时间限制: 1 Sec  内存限制: 256 MB
提交: 0  解决: 0
[提交][状态][讨论版][命题人:]

题目描述

在一个集邮爱好者的世界里,有各种各样精美的邮票。这些邮票上印着不同的图案, 而我们把邮票上的图案按照特定的规则对应到 26 个大写英文字母(按照字典序从 a1 到 a26 排列,其中 a1 代表 ‘A‘,a5 代表 ‘E‘,a26 代表 ‘Z‘ )。 现在,集邮爱好者想要制作一个独特的邮票序列来展示自己的收藏。这个邮票序列 的长度在 1 到 K 之间(包含 1 和 K)。但是,由于某些特殊原因,对于每一种对应字母 的邮票,他在这个序列中使用的数量是有限制的。具体来说,对于第 i 种对应字母(即 ai)的邮票,他在序列中使用的数量必须在 0 到 Ci 之间(包含 0 和 Ci)。 那么,请你计算一下,在满足这些条件的情况下,集邮爱好者可以制作出多少种不 同的邮票序列呢?结果需要对 998244353 取模。

输入

第一行输入一个整数 K。 

第二行输入 26 个整数 C1, C2, . . . C26 。 

输出

输出一个整数,表示不同的邮票序列的种数(对 998244353 取模)

样例输入

样例1
2
2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
样例2
358
1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
样例3
1000
1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000
1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000
1000 1000 1000 1000


样例输出

样例1
10
样例2
64
样例3
270274035

提示


数据约束和子任务 



1 ≤ K ≤ 1000 



0 ≤ Ci ≤ 1000 



所有输入值均为整数。

来源

[提交][状态]