Codeforces Round #502 (in memory of Leopoldo Taravilse, Div. 1 + Div. 2)-C. The Phone Number
本文共 665 字,大约阅读时间需要 2 分钟。
C. The Phone Number
题意:给你n个数字从1到n,现在让你用这n个数字构造一个序列,使得最长上升子序列和最长下降子序列的和最小。
思路:我们可以先打一个表观察一下规律,通过打标找规律我们可以发现,对于n<=x*y,当x+y最小的时候就是最小的和,通过分析我们可以发现,我们相当于是把n个数字分成x组,使得每组最多y个数字,在每一组中构成的是最长下降序列,x组构成的是最长上升子序列。打表我是把n的全排列构造出来,然后求每个全排列的最长上升子序列和最长下降子序列的和,把和最小的序列打印出来。
#include #include #include #include #include
转载地址:http://obgsi.baihongyu.com/