#P2019. 紫色百合(fiorentina)
紫色百合(fiorentina)
【问题描述】
“牵着你的手的是她,路边开满了紫色的百合花……”
你从梦中醒来,却依然忘不了梦中的~她~百合花,每朵百合花都有一个权值,在二进制下写成一行‘1’,第i朵紫色百合的权值在二进制下写成i个‘1’。你想挑出其中一些组成“一束百合花”且价值在二进制下恰好为一个‘1’后面P个‘0’,那么有多少种挑选方案呢?
定义“一束百合花”的价值为这些百合花组成的集合的所有子集的权值乘积的和(空集的权值乘积算1)。如价值为1和3组成的一束百合花价值为1+1+3+1*3=8
【输入格式】
一行两个正整数N,P,含义如题目中所示
【输出格式】
一个整数代表方案数模 998244353 的结果
【样例输入1】
3 3
【样例输出1】
2
【样例输入2】
233 666
【样例输出2】
572514965
【数据范围与约定】
测试点编号 | N | P |
---|---|---|
1 | ≤ 8 | ≤ 100 |
2 | ≤ 12 | |
3 | ≤ 15 | |
4 | ≤ 100 | |
5 | ≤ 1000 | |
6 | ≤ 2000 | |
7 | ≤ 100000 | |
8 | ||
9 | ||
10 |
相关
在下列比赛中: