摘要:
题目链接:http://acm.csu.edu.cn/csuoj/problemset/problem?pid=1551 升级版:Uva 1471 题意: 让你求删除一段连续的子序列之后的LIS。 题解: 预处理:先求一个last[i],以a[i]为开始的合法最长上升子序列的长度。再求一个pre[i 阅读全文
摘要:
题意: 给你一个数组,让你删除一个连续的子序列,使得剩下的序列中有最长上升子序列, 求出这个长度。 题解: 预处理:先求一个last[i],以a[i]为开始的合法最长上升子序列的长度。再求一个pre[i],以a[i]为结尾的合法最长上升子序列长度。 那么这题的答案就是:max(pre[j]) + l 阅读全文
摘要:
题意: 给你一串数字,你可以选择一个位置,将这个位置以上的数字全部翻转过来。问怎么翻转才能把大的放在下面,小的放上面。 题解: 先用另一个数组保存最后的结果(大的在下,小的在上,sort一下就好)。然后从最后一个位开始匹配。如果当前位置的数和最后结果不一样,就要把它翻到这里。 就要在数组里面找到这一 阅读全文