2012年8月23日
摘要: 题目描述题目描述:为了迎接奥运,市体育局举行手拉手大包围活动,开始时N个人手拉手围成一个圈。后来这些人中的一些按顺序向里面出圈形成一个新圈。从而使原圈形成一个从高到低,最低与最高连接的圈。新圈重复相同的操作,直到没有人要出圈为止。问最少要形成多少个这样的圈。输入格式输入:第一行N个人,第二行输入N个人的身高(每个身高中用空格隔开)N<=1000输出格式输出:最少形成多少个这样的圈。定理:下降子序列的个数等于最长不下降子序列的长度。稍微想一想就明白了。将圈拆成段枚举就是了。二分优化:最长不下降子序列的O(n*logn)算法话说和[NOIP1999]拦截导弹差不多,应该也可以用贪心。 1 # 阅读全文
posted @ 2012-08-23 19:59 怡红公子 阅读(290) 评论(0) 推荐(0) 编辑