1159: 紫色百合

Memory Limit:512 MB Time Limit:2.000 S
Judge Style:Text Compare Creator:
Submit:1 Solved:0

Description

“牵着你的手的是她,路边开满了紫色的百合花......”你从梦中醒来,却依然忘不了梦中的她百合花,每朵百合花都有一个权值,在二进制下写成一行‘1’,第i朵紫色百合的权值在二进制下写成i个‘1’。你想挑出其中一些组成“一束百合花”且价值在二进制下恰好为一个‘1’后面P个‘0’,那么有多少种挑选方案呢?
定义“一束百合花”的价值为这些百合花组成的集合的所有子集的权值乘积的和(空集的权值乘积算1)。如价值为1和3组成的一束百合花价值为1+1+3+1*3=8

Input

一行两个正整数N,P,含义如题目中所示

Output

一个整数代表方案数模 998244353 的结果

Sample Input Copy

样例输入1:
3 3

样例输入2:
233 666

Sample Output Copy

样例输出1:
2

样例输出2:
572514965

HINT