#YHW2603. 普通的构造

普通的构造

普通的构造


问题描述

现在,面条老师需要构造一个 1n1 \sim n 的排列 a1,a2,,ana_1,a_2,\dots,a_n,其中要求:

  1. 排列中顺序对和逆序对的数量相等
  2. 在所有符合上述要求的排列中,输出字典序最小的方案。

定义

  • 顺序对/逆序对:对于一组位置 (i,j)(i,j),其中 i<ji < j
    • ai<aja_i < a_j,则构成顺序对
    • ai>aja_i > a_j,则构成逆序对
  • 字典序比较:对两个排列,从首个位置开始,逐个比较值的大小;在第一个值不同的位置上值较小的排列字典序更小。

为避免对着答案找规律,本题不提供大样例。


输入格式

一行一个正整数 nn,表示排列的长度。题目保证 nn44 的整数倍。


输出格式

一行,表示答案序列,为满足条件的排列。


样例

输入

4

输出

1 4 3 2

数据范围与约定

共20个测试点,每个测试点5分。

  • 前五个测试点依次为 8,12,16,20,248,12,16,20,24
  • 对于 60% 的测试点:1n1031 \le n \le 10^3
  • 对于 100% 的测试点:1n1051 \le n \le 10^5,且 nn44 的倍数。