CF460D Little Victor and Set

题目描述

小 Victor 非常喜欢集合论。我们再提醒一下,集合指的是所有元素都两两不同的一组数。今天 Victor 想要找到一个整数集合 $S$,满足以下条件: - 对于所有 $x$,满足 $l \leq x \leq r$; - $1 \leq |S| \leq k$; - 记集合 $S$ 的第 $i$ 个元素为 $s_{i}$,值 $f(S) = s_{1} \operatorname{xor} s_{2} \operatorname{xor} \dots \operatorname{xor} s_{|S|}$(即集合中所有元素的异或和)应尽可能小。 请你帮助 Victor 找出满足要求的集合。

输入格式

第一行输入三个用空格分隔的整数 $l, r, k$,满足 $1 \leq l \leq r \leq 10^{12}$,$1 \leq k \leq \min(10^{6}, r-l+1)$。

输出格式

输出一行,包含三个部分:$f(S)$ 的最小值,其次是集合的大小 $|S|$,然后依次输出集合中的各个元素(顺序任意)。 如果有多个最优解,可以输出任意一个。

说明/提示

操作 $\operatorname{xor}$ 表示按位异或运算。换句话说,它是异或操作。 由 ChatGPT 5 翻译