题目描述
原题来自:BZOJ 2142
一年一度的圣诞节快要来到了。每年的圣诞节小 E 都会收到许多礼物,当然他也会送出许多礼物。不同的人物在小 E 心目中的重要性不同,在小 E 心中分量越重的人,收到的礼物会越多。
小 E 从商店中购买了 n 件礼物,打算送给 m 个人,其中送给第 i 个人礼物数量为 wi。请你帮忙计算出送礼物的方案数(两个方案被认为是不同的,当且仅当存在某个人在这两种方案中收到的礼物不同)。由于方案数可能会很大,你只需要输出模 P 后的结果。
输入格式
输入的第一行包含一个正整数 P,表示模数;
第二行包含两个正整数 n 和 m,分别表示小 E 从商店购买的礼物数和接受礼物的人数;
以下 m 行每行仅包含一个正整数 wi,表示小 E 要送给第 i 个人的礼物数量。
输出格式
若不存在可行方案,则输出 Impossible
,否则输出一个整数,表示模 P 后的方案数。
样例
100
4 2
1
2
12
12 种方案详情如下:
{1}{2,3},{1}{2,4},{1}{3,4},{2}{1,3},{2}{1,4},{2}{3,4},{3}{1,2},{3}{1,4},{3}{2,4},{4}{1,2},{4}{1,3},{4}{2,3}。
数据范围与提示
设 P=p1c1×p2c2×p3c3×⋯×ptct,pi 为质数。
对于 100% 的数据,1≤n≤109,1≤m≤5,1≤pici≤105。