#P17367. [ECNA 2023] A Pivotal Question
[ECNA 2023] A Pivotal Question
题目描述
快速排序是 Tony Hoare 于 1959 年提出的一种递归排序算法。其中一个主要步骤是“划分”:给定数组中的一个元素 作为枢轴,把数组重新排列成
使 中所有值都不大于 , 中所有值都大于 。
例如,数组以 为枢轴完成划分后,可以把所有不大于 的元素放在它左侧,所有大于 的元素放在右侧。注意, 和 内部通常没有排序,并且其中任意一个都可以为空。
如何执行划分、如何选择枢轴,都是很有意思但与本题无关的问题。给定一个数组,假设它已经完成某次划分,请找出其中所有可能作为枢轴值的元素;如果数组不可能是划分后的结果,也要据此作答。
输入格式
输入首先给出一个正整数 (),表示数组大小;随后给出 个正整数,表示数组中的值。所有值互不相同,且不超过 。
输出格式
先输出整数 ,表示数组中可能作为划分枢轴的值的数量;随后按这些值在输入中的出现顺序输出它们。如果 ,只输出前 个枢轴值。 表示数组不是任何一次合法划分后的结果。
10 1 11 8 13 53 20 63 99 79 94
3 1 13 63