#CCSP2025A. 仓库价格调整
仓库价格调整
题目来自 CCSP2025 T1,评测使用官方数据。
时间限制: 1.0 秒
空间限制: 512 MiB
题目背景
小新是一名全栈工程师,刚加入全球智能仓储公司 SmartDepot。这家公司运营着一个集仓储管理、云端计算、数据库服务与硬件加速于一体的智能系统,负责全球范围内的物流调度与计算任务。为了确保 SmartDepot 的整个业务链条高效运转,小新决定寻求你的帮助,一起完成一系列关键任务。
题目描述
公司仓库中,依次摆放着一排共有 件货物(编号从 到 ,表示它们的固定顺序)。每件货物都有一个互不相同的整数价格 。
由于系统升级时出了一点小差错,部分货物在盘点时出现价格顺序混乱,因此需要小新对所有货物的价格进行调整。具体做法是选择一个整数 ,并将每个货物的价格调整为 。其中 表示按位异或。
如果某件货物在位置上靠前,但其价格比后面货物的价格还高,就会造成混乱。小新希望选择合适的掩码 ,使得在调整后的混乱程度更小。
更准确地说,若一对货物 满足 且 ,则称它们为一个“合法对”。你的任务是找到使得合法对数量最大化的最优掩码 ,若存在多个最优掩码则取最小者。
输入格式
从标准输入读入数据。
输入的第一行包含一个正整数 。
输入的第二行包含 个非负整数 ,表示每件货物的原本价格。
输出格式
输出到标准输出。
输出的第一行为一个非负整数,表示最大合法对数量。
输出的第二行为一个整数,表示最小的最优掩码 ,也就是所有能达到最大合法对数量的掩码中,数值最小的那个。
5
12 15 6 0 4
8
8
样例 1 解释
取 时,$B=[12\oplus 8,15\oplus 8,6\oplus 8,0\oplus 8,4\oplus 8]=[4,7,14,8,12]$。
满足 且 的合法对共有 个,分别是 。
子任务
对于所有测试点,保证 ,所有 两两不同。
本题采用捆绑测试,你只有通过一个子任务中的所有测试点才能得到该子任务的分数。
| 子任务编号 | 分值 | 特殊性质 | |
|---|---|---|---|
| 1 | 30 | 最终有最大合法对数和 | |
| 2 | 20 | 无 | |
| 3 | 50 |