当前位置: 首页 > news >正文

CF1770F Koxia and Sequence

若长度为 \(n\) 的非负整数数组 \(a\) 满足下列条件,我们称其为好数组:

  • \(a_1 + a_2 + \dots + a_n = x\)

  • \(a_1 \mid a_2 \mid \dots \mid a_n = y\)

我们定义长度为 \(n\) 的非负整数数组 \(a\) 的权值为 \(a_1 \oplus a_2 \oplus \dots \oplus a_n\),求所有好数组的权值异或和。

\(1 \leq n \leq 2^{40}\)\(0 \leq x < 2^{60}\)\(0 \leq y < 2^{20}\)

我们观察题目中的条件,发现如下性质:

性质 \(1\)\(n\) 为偶数时答案为 \(0\)\(n\) 为奇数时答案为所有好数组的 \(a_1\) 异或和。

考虑 \(n\) 为偶数时若数组 \(a\) 回文,则权值一定为 \(0\),否则一定能找到与 \(a\) 对称的数组 \(a'\),此时 \(a\)\(a'\) 权值的异或和为 \(0\)\(n\) 为奇数时对 \(a_2\)\(a_n\) 应用上面的结论即可,剩下的为 \(a_1\) 的异或和。

接下来考虑好数组的条件。发现两个条件同时满足很难处理,不妨对第二个条件进行容斥。

你考虑对于所有 \(y' \subseteq y\),求出满足 \(a_1,a_2,\dots,a_n \subseteq y'\) 的好数组后进行容斥。不妨考虑按位处理,考虑 \(a_1\)\(2^k\) 出现的次数。由于我们只需要获得其在模 \(2\) 意义下的结果,则可以简单表示为:

\[\bigoplus_{\sum\limits_{i=1}^{n} a_i = x-2^k} [a_1 \subseteq y'-2^k][a_2 \subseteq y']\dots[a_n \subseteq y'] \]

使用卢卡斯定理,可得:

\[\bigoplus_{\sum\limits_{i=1}^{n} a_i = x-2^k} \binom{y'-2^k}{a_1}\binom{y'}{a_2}\dots\binom{y'}{a_n} \]

使用范德蒙德卷积可以化简为:

\[\binom{ny'-2^k}{x-2^k} \]

再次使用卢卡斯定理可得:

\[x-2^k \subseteq ny'-2^k \]

直接判断即可。

#include<iostream>
#include<cstdio>
using namespace std;
const long long V=20;
long long n,x,y;
bool subseteq(long long num1,long long num2){return (num1&num2)==num1;
}
long long solve(long long num){long long ans=0;for(int i=0;i<V;i++){long long pre=1<<i;if(subseteq(pre,num)  &&  subseteq(x-pre,n*num-pre)){ans^=pre;}}return ans;
}
int main(){scanf("%lld %lld %lld",&n,&x,&y);if(n%2==0  ||  x<y){printf("0");}else{long long ans=0;for(int i=1;i<(1<<V);i++){if(subseteq(i,y)){ans^=solve(i);}}printf("%lld",ans);}return 0;
}
http://www.gsyq.cn/news/41106.html

相关文章:

  • 数据采集与融合技术实践2
  • 2025 年板材源头厂家最新推荐排行榜:聚焦绿色生产与环保认证,精选七家优质企业深度解析
  • 智能家居产品品牌怎么选择:2025年最新攻略
  • 2025年床垫品牌加盟哪家口碑好?床垫品牌加盟推荐
  • 【转载】(修改版本)浮点数的表现形式
  • 2025 年 11 月搅拌反应釜,树脂反应釜,高速反应釜,远红外反应釜厂家最新推荐,聚焦资质、案例、售后的五家机构深度解读!
  • Day12背景属性---拆封写法与复合写法
  • 焊接效率翻倍!焊台工具的性价比黑马!正点原子T300智能焊台160W 大功率 + 四芯兼容!
  • 实现 json path 来评估函数式解析器的损耗
  • 2025 年 11 月衬四氟反应釜,化工反应釜,夹套反应釜厂家最新推荐,聚焦资质、案例、售后的五家机构深度解读!
  • 一文读懂激活函数与损失函数的区别
  • 工业自动化通信之西门子CPU连接资源
  • AI+ Smali 等于 破解插件
  • IBM 3650M
  • 2025 年 11 月五金电镀加工,电子产品电镀加工,东莞电镀加工厂家最新推荐,产能、专利、环保三维数据透视!
  • Ubuntu 24.04.2 LTS 中修改远程桌面(xrdp)的默认端口
  • 2025年安全检测检验公司排行榜单前十名推荐
  • 常见的命名规范
  • 2025年边坡防护网优质厂家权威推荐榜单:主动防护网/被动防护网/绞索网源头厂家精选
  • 在Delphi中使用连接池连接MSSQL数据库和不使用连接池连接数据库的有什么区别
  • 智能体自动化 ui 测试
  • 快速创建模拟 REST API
  • CSS简介及导入方式
  • 2025 年 11 月倍捻机,直捻机,大卷装倍捻机厂家最新推荐,实力品牌深度解析采购无忧之选!
  • 皮试
  • 使用rsync及inotify实现两台Linux设备间的文件夹同步
  • 教育部等七部门关于加强中小学科技教育的意见-解读
  • QwQ 32B VS DeepSeek R1
  • 2025 年 11 月氟碳喷涂精致钢厂家推荐排行榜,门窗精致钢,幕墙精致钢,装饰精致钢,定制精致钢公司推荐
  • 2025 年 11 月社区养老院,老年痴呆养老院,自理老人住养老院最新推荐,聚焦资质、案例、售后的五家机构深度解读