炼金术(Alchemy)
题目描述
铃是一个爱玩游戏的女孩子。
她在游戏中想要炼制一种稀有合金 —— 这需要 n n n 种金属来合成。
她准备好矿石后建造了 k k k 个不同的熔炉,当熔炉启动时,会随机炼出这 n n n 种金属中的一些(也可能什么都没有)。
如果把每个熔炉炼出的金属收集起来,有了全部 n n n 种金属,就能造出合金了。澪对此很好奇,对铃说:「我考考你,有多少种情况可以炼出合金呢?」这个简单的问题铃很快就会做了,你能求出结果吗?
答案可能很大,请对 998244353 998244353 998244353 取模(即除以 998244353 998244353 998244353 的余数)后输出。
输入格式
输入一行两个正整数 n , k n,k n,k。
输出格式
输出一行一个整数,表示答案。
样例 #1
样例输入 #1
2 2
样例输出 #1
9
样例 #2
样例输入 #2
4 5
样例输出 #2
923521
样例 #3
样例输入 #3
233 123
样例输出 #3
81633405
提示
【样例一解释】
对于所有成功情况,两个熔炉中的金属如下表:
一号 | 二号 |
---|---|
∅ \varnothing ∅ | { 1 , 2 } \{1,2\} {1,2} |
{ 1 } \{1\} {1} | { 2 } \{2\} {2} |
{ 1 } \{1\} {1} | { 1 , 2 } \{1,2\} {1,2} |
{ 2 } \{2\} {2} | { 1 } \{1\} {1} |
{ 2 } \{2\} {2} | { 1 , 2 } \{1,2\} {1,2} |
{ 1 , 2 } \{1,2\} {1,2} | ∅ \varnothing ∅ |
{ 1 , 2 } \{1,2\} {1,2} | { 1 } \{1\} {1} |
{ 1 , 2 } \{1,2\} {1,2} | { 2 } \{2\} {2} |
{ 1 , 2 } \{1,2\} {1,2} | { 1 , 2 } \{1,2\} {1,2} |
一共 9 9 9 种,因此答案为 9 9 9。
【数据范围】
对于
30
%
30\%
30% 的数据,
1
≤
n
,
k
≤
10
1\le n,k \le 10
1≤n,k≤10;
对于
80
%
80\%
80% 的数据,
1
≤
n
,
k
≤
1
0
6
1\le n,k \le 10^6
1≤n,k≤106;
对于
100
%
100\%
100% 的数据,
1
≤
n
,
k
≤
1
0
9
1\le n,k \le 10^9
1≤n,k≤109。
Scratch实现
后续
接下来我会不断用scratch来实现信奥比赛中的算法题、Scratch考级编程题实现、白名单赛事考题实现,感兴趣的请关注,我后续将继续分享相关内容