2025-07-27 模拟赛总结

预期:\(100+100+100+100=400\)
实际:\(100+15+100+100=315\)
排名:\(rk25/127\)

比赛链接:http://oj.daimayuan.top/contest/367。

A - 和除或:

题意:

给定长度为 \(n\) 的序列 \(a\),保证每个 \(a_i\) 至多拥有四个二进制位,你需要求出 \(\displaystyle\sum_{i=1}^n\sum_{j=1}^n\lceil\frac{a_i+a_j}{a_i\operatorname{or}a_j}\rceil\) 的值。

思路:

由于 \(x+y=(x\operatorname{and}y)+(x\operatorname{or}y)\),将其带入得到当 \(a_i\operatorname{and}a_j=0\)\(\lceil\frac{a_i+a_j}{a_i\operatorname{or}a_j}\rceil=1\),否则 \(\lceil\frac{a_i+a_j}{a_i\operatorname{or}a_j}\rceil=2\)

现在题目转化为求序列中有多少对 \(a_i\operatorname{and}a_j\neq 0\)

由于每个 \(a_i\) 至多拥有四个二进制位,所以我们可以容斥