比赛场次 | 96 |
---|---|
比赛名称 | 20110729 |
比赛状态 | 已结束比赛成绩 |
开始时间 | 2011-07-29 08:00:00 |
结束时间 | 2011-07-29 13:00:00 |
开放分组 | 全部用户 |
注释介绍 |
题目名称 | 01环 |
---|---|
输入输出 | 01ring.in/out |
时间限制 | 2000 ms (2 s) |
内存限制 | 128 MiB |
测试点数 | 10 简单对比 |
用户 | 结果 | 时间 | 内存 | 得分 |
---|---|---|---|---|
ybh | AAAAAAAAAA | 0.000 s | 0.00 MiB | 100 |
PurpleShadow | AAEEEEEEEE | 0.000 s | 0.00 MiB | 20 |
苏轼 | AATTTTTTTT | 0.000 s | 0.00 MiB | 20 |
老虎小飞 | C | 0.000 s | 0.00 MiB | 0 |
.Xmz | WWTTTTTTTT | 0.000 s | 0.00 MiB | 0 |
kaaala | WWTTTTTTTT | 0.000 s | 0.00 MiB | 0 |
题目描述:
有足够多的0和1,组成一个长度为N的01环,要求不超过K个0是连续的,求满足条件的方案数。注意:循环同构会被认为是同一种方案。
输入文件(01ring.in):
第一行有两个整数T,M,表示以下有T组数据。
每组数据占一行有两个整数N,K。
每组数据之间有一个空行隔开。
输出文件(01ring.out):
输出T行,每行顺次对应一组测试数据。
每组数据你需要输出最后的方案数除以M的余数。
输入样例:
3 100000007
3 1
3 3
4 1
输出样例:
2
4
3
解释:
第一组数据的方案是:111,110。
第二组数据的方案是:111,110,100,000。
第三组数据的方案是:1111,1110,1010。
约束和限制:
对于20%的数据T<=20;
对于100%的数据T<=50;
对于20%的数据N,K<=20;
对于100%的数据N,K<=2000;
对于100%的数据 100,000,000<=M<=1,000,000,000 且M是素数。