CF1419D1.Sage's Birthday (easy version)

传统题 时间 2000 ms 内存 256 MiB 5 尝试 1 已通过 1 标签

Sage's Birthday (easy version)

题目描述

这是该问题的简单版本。不同之处在于,在简单版本中所有价格 aia_i 都互不相同。只有在你同时解决了两个版本的问题后,才能进行 hack。

今天是 Sage 的生日,她要去购物购买冰球。所有 nn 个冰球被从左到右排成一行,编号为 11nn。每个冰球都有一个正整数价格。在本版本中,所有价格都不同。

如果一个冰球的价格严格小于它左右相邻的两个冰球(即左边最近和右边最近的冰球),那么这个冰球被称为“便宜”。最左边和最右边的冰球都不算便宜。Sage 会选择所有便宜的冰球,然后只购买这些冰球。

你可以在 Sage 之前到商店,并随意重新排列这些冰球。请你求出 Sage 最多能买到多少个冰球,并给出冰球的最佳排列顺序。

输入格式

第一行包含一个整数 nn1n1051 \le n \le 10^5),表示商店中的冰球数量。

第二行包含 nn 个互不相同的整数 a1,a2,,ana_1, a_2, \dots, a_n1ai1091 \le a_i \le 10^9),表示每个冰球的价格。

输出格式

第一行输出 Sage 最多能买到的冰球数量。

第二行输出冰球的最佳排列顺序。如果有多种答案,可以输出其中任意一种。

说明/提示

在示例中,无论如何排列冰球,Sage 都无法买到 33 个冰球。如果冰球排列为 (3,1,4,2,5)(3, 1, 4, 2, 5),那么 Sage 会买到两个冰球:价格为 1122 的冰球,因为它们是便宜的。

由 ChatGPT 4.1 翻译

样例

5
1 2 3 4 5
2
3 1 4 2 5 

在线编程 IDE

建议全屏模式获得最佳体验