给出一个n, 构造出一个长度为n的数列,使得:
没啥好说,直接从2开始输出n个数就好了.
给出nab,要求构造一个长度为n,内容为1-n(不重复)的队列,有a个极大值,b个极小值(第一个和最后一个不算),如果不存在就输出-1.
稍微画一下就会发现abs(a-b)不能大于1且a+b不能大于n - 2,否则就是无法构造的出来的.
然后因为要从1-n中选,易得极小值一定是1到b中的数,极大值一定是n - a到n中的数,所以先轮流交替取,构造出包含1到b,n-a到n的数列,然后再根据最后一个构造的数是极大值还是极小值继续在中间的数中构造单独递增或者递减序列就可以了.
a--;
C没想出来,感觉挺复杂的,可能涉及到什么我还没学过的结构,等会了再补题.