loj#P6731. 「2019 山东一轮集训 Day3」小孩召开法

「2019 山东一轮集训 Day3」小孩召开法

题目描述

小孩召开法,

旦写一北砬。

梦厷停留在,

破了大式様。

——龚诗锋《炄勺,砒》

小弟递给神树大人一本《阿 Q 外教你学计数》,神树大人看了看第一题,发现不会;神树大人看了看第二题,发现题都读不懂;......;神树大人看了看第 114514114514 题,终于用 19198101919810 秒把它做了出来。他决定把这个题写进《神树大人教你做数学》。

对于长为 nn 的一个排列 {ai}\{a_i\} 的一个子序列 ai1,ai2,aika_{i_1},a_{i_2},\dots a_{i_k},如果这个子序列满足 ai1>ai2<ai3>aika_{i_1}>a_{i_2}<a_{i_3}\dots >a_{i_k},那么这个子序列被称作交替子序列。你要求的就是最长的交替子序列等于 KK 的长为 nn 的排列有多少个,对 998244353998244353 取模。

输入格式

输入 n,Kn,K

输出格式

输出一行答案。

3 2
3
10 6
878856
5000 1145
849619090

数据范围与提示

提示:龚诗锋,小万邦,小弟是一个人。

另注:千万不要在这道题上浪费太多时间。

子任务 分数 nn KK
11 1010 10\leq 10 n\leq n
22 2020 5000\leq 5000
33 55 105\leq 10^5 =n=n
44 1010 n\leq n
55 1515 109\leq 10^9 min(20,n)\leq \min(20,n)
66 55 min(200,n)\leq \min(200,n)
77 3535 1018\leq 10^{18} min(106,n)\leq \min(10^6,n)