打卡信奥刷题(382)用Scratch图形化工具信奥P7223[普及组/提高组] [RC-04] 01 背包

[RC-04] 01 背包

题目描述

有一个容积为 $+\infty $ 的背包,你要往里面放物品。

你有 n n n 个物品,第 i i i 个体积为 a i a_i ai

你有一个幸运数字 p p p,若放入的物品体积和为 k k k,你会得到 p k p^k pk 的收益。特别地, 0 0 = 1 0^0=1 00=1

求所有 2 n 2^n 2n 种放入物品的方案的收益和。答案很大,因此请输出它对 998244353 998244353 998244353 取模的值。

输入格式

第一行两个整数 n , p n,p n,p

接下来一行 n n n 个正整数 a 1 ∼ a n a_1\sim a_n a1an,描述这 n n n 个物品的体积。

输出格式

输出一个整数,为所有 2 n 2^n 2n 种方案的收益和对 998244353 998244353 998244353 取模的值。

样例 #1

样例输入 #1

2 2
1 4

样例输出 #1

51

提示

【样例解释】

答案为 2 0 + 2 1 + 2 4 + 2 5 = 51 2^0+2^1+2^4+2^5=51 20+21+24+25=51

【数据范围】

对于所有数据, 1 ≤ n ≤ 1 0 6 1\le n\le 10^6 1n106 0 ≤ p , a i < 998244353 0\le p,a_i<998244353 0p,ai<998244353

详细数据范围如下表:

测试点编号 n n n p p p ∑ i = 1 n a i \sum_{i=1}^na_i i=1nai每测试点分数
1 1 1 = 0 =0 =0 2 2 2
2 ∼ 5 2\sim 5 25 ≤ 22 \le 22 22 6 6 6
6 ∼ 9 6\sim 9 69 ≤ 1000 \le 1000 1000 ≤ 1000 \le 1000 1000 6 6 6
10 ∼ 14 10\sim 14 1014 ≤ 100000 \le 100000 100000 ≤ 100000 \le 100000 100000 5 5 5
15 15 15 25 25 25

Scratch实现

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0mGVOKVe-1721518278336)(https://i-blog.csdnimg.cn/direct/6356d5bbbb6d4601a2fb042000659e1e.png)]

后续

接下来我会不断用scratch来实现信奥比赛中的算法题、Scratch考级编程题实现、白名单赛事考题实现,感兴趣的请关注,我后续将继续分享相关内容

  • 18
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值