AT_jsc2019_final_c Maximize Minimum

题目描述

数轴上有一条线段,其长度为 $L$,左端点表示的数为 $0$。 在开始时,这条线段上只在表示数 $X$ 的位置上放了一枚棋子。 接下来会进行 $N$ 次操作,第 $i$ 次操作的内容如下:($0\le i\le N-1$ 且 $i$ 为整数) - 如果棋子未被放置在表示数 $A_i$ 的位置上,就将一枚新棋子放在该位置上; - 否则,去除该位置上的棋子。 数据保证,在每次操作之后,数轴上都会有至少两枚棋子。 在每次操作之后,请计算下面的这个值:($p$ 的位置表示数轴上表示 $p$ 的点) - 任选一枚现在在数轴上的棋子,若它原来的位置为 $x$,则可以在 $L-x$ 的位置未放置棋子的情况下将该棋子移到 $L-x$ 的位置。 注意,在进行上面的计算时,实际上不会移动棋子。

输入格式

第一行,输入三个整数 $N,L,X$,每两个相邻的整数之间以单个空格隔开。 第二行到第 $(N+1)$ 行,第 $(i+2)$ 行输入一个整数 $A_i$。

输出格式

输出 $N$ 行,第 $(i+1)$ 行输出第 $i$ 次操作结束后的所求值。

说明/提示

#### 数据规模与约定 对于 $100\%$ 的数据,保证: - $1\le N\le 2\times 10^5$; - $1\le L\le 10^9$; - $0\le X\le L$; - $0\le A_i\le L$。