#N0410. 序列!上升下降都有要求!【NOIP2023模拟赛T4】

序列!上升下降都有要求!【NOIP2023模拟赛T4】

题目描述

33DAI 想要出一道 LIS 相关的问题,但是他懒得造数据,于是他把这个任务交给了你。

33DAI 想让数据有一定强度。

她要求你构造一个长度为 nn排列,并且要求这个排列的最长上升子序列长度为 aa,最长下降子序列长度为 bb。如果不存在这样的排列,请输出 -1

长度为 nn 的排列指 1n1\sim nnn 个数按你喜欢的方式排成一排形成的序列。
最长上升子序列即最长的、上升的、子序列。
最长下降子序列即最长的、下降的、子序列。
看上去解释了,但实际上我好像没有解释啥。

输入格式

输入三个整数:nn, aa, bb

输出格式

如果无解就输出 -1,不然就输出 nn 个空格隔开的整数,即你构造的排列。

显然可能有多个答案,输出任何一个就好,33DAI 会认真写一个 spj 的。

5 3 2
2 4 1 5 3
7 7 1
1 2 3 4 5 6 7
300000 300000 300000
-1

大样例:sample4.zip

数据规模与约定

对于 100%100\% 的数据:

  • 1  n,a,b  3× 105 1\ \le\ n,a,b\ \le\ 3\times\ 10^5

子任务:

  • 子任务 1(10 分):n8n\le 8
  • 子任务 2(10 分):b=1b=1
  • 子任务 3(30 分):n1000n\le 1000
  • 子任务 4(30 分):保证有解
  • 子任务 5(20 分):没有特殊限制