AT_abc406_e.[ABC406E] Popcount Sum 3
普及+/提高
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定正整数 N,K。
请求出所有小于等于 N 的正整数 x 中,满足以下条件的数的总和,并将结果对 998244353 取模。
- x 的 popcount 值恰好为 K。
给定 T 个测试用例,请分别求出答案。
popcount 指的是,对于正整数 y,其 popcount 值 popcount(y) 表示 y 在二进制表示中数字 1 出现的次数。例如,popcount(5)=2,popcount(16)=1,popcount(25)=3。
输入格式
输入按以下格式从标准输入给出。
T
case1
case2
⋮
caseT
casei 表示第 i 个测试用例。每个测试用例按以下格式给出。
N K
输出格式
输出 T 行。第 i 行 (1≤i≤T) 输出第 i 个测试用例的答案。
输入输出样例
输入#1
2 20 2 1234567890 17
输出#1
100 382730918
说明/提示
「数据范围」
- 1≤T≤100
- 1≤N<260
- 1≤K≤60
- T,N,K 均为整数
「样例 1 解释」
对于第 1 个测试用例,小于等于 20 的正整数中,popcount 值为 2 的数有 3,5,6,9,10,12,17,18,20,共 9 个,它们的总和是 100。
100 对 998244353 取模的结果是 100,因此第 1 行输出 100。
请注意需要输出对 998244353 取模的余数。
输入解题思路,AI测评打分。不知道怎么写?