CF 1635 D. Infinite Set 思维 + 二进制

本文讲解了如何通过观察数的添加规则,利用二进制表示和动态规划求解集合中小于2^p的数的数量。关键步骤包括转换为二进制长度增加问题,使用dp求解组合数,并通过map去重。适用于n和p规模在2e5内的问题。

文章目录

传送门

题意

给你一个集合 S S S,初始集合内含有 n n n个数,让后按照一下三个规则无限的向集合中添加数:

  1. 对于所有的 1 ≤ i ≤ n , x = a i 1\le i\le n,x=a_i 1in,x=ai都在集合中。
  2. 对于所有的 x = 2 y + 1 , y ∈ S x=2y+1,y\in S x=2y+1,yS,都可以将 x x x加入集合。
  3. 对于所有的 x = 4 y , y ∈ S x=4y,y\in S x=4y,yS都可以将x加入集合。

问集合中小于 2 p 2^p 2p的数有多少个,对 1 e 9 + 7 1e9+7

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值