题解/算法 {F - Subsequence LCM}

文章讨论了在AtCoderABC349竞赛中的F-SubsequenceLCM问题,涉及如何利用LCM的性质找到使得二进制表示下所有元素按位或结果为全1的合法方案。关键算法依赖于精确计算大整数的质因子数量和高效时间复杂度的优化。
摘要由CSDN通过智能技术生成

题解/算法 {F - Subsequence LCM}

@LINK: https://atcoder.jp/contests/abc349/tasks/abc349_f;

根据LCM的性质 (@LINK: (https://editor.csdn.net/md/?not_checkout=1&articleId=134220291)-(@MARK(1))), 只有AiM的约数时 他才是合法的, 将每个合法的数 变成是一个二进制数, 那么一个合法方案 就是说该方案里的所有元素对应的二进制的|或运算结果 为全1;
. 注意, M=1e16 他的质因子个数 最多有13个, 这要精确的计算, 因为他可以支持2^13 * 2^13 = 2^26 = 6e7的时间;

此时转换为了一个算法模板: 算法 {选择若干个数 使得其|或运算结果为T的方案数}: @LINK: https://editor.csdn.net/md/?not_checkout=1&articleId=137919873;

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值