标签:des style io color ar os sp for strong
Time Limit: 2000MS | Memory Limit: 65536K | |
Total Submissions: 34454 | Accepted: 15135 |
Description
Input
Output
Sample Input
7 1 7 3 5 9 4 8
Sample Output
4
最长上升子序列。。orz 傻逼居然直接把dp[n]输出了 后来wa了一时还没反应过来。。
dp[i]代表以i为结尾的最长上升子序列的长度,but dp[n]不一定最长。。其实整个dp数组就是无序的了。。可以sort后输出
O(n*n)渣比写法
#include <algorithm> #include <iostream> #include <cstring> #include <cstdlib> #include <string> #include <cctype> #include <vector> #include <cstdio> #include <cmath> #include <queue> #include <stack> #include <map> #include <set> #define ll long long #define maxn 1010 #define pp pair<int,int> #define INF 0x3f3f3f3f #define max(x,y) ( ((x) > (y)) ? (x) : (y) ) #define min(x,y) ( ((x) > (y)) ? (y) : (x) ) using namespace std; int n,dp[maxn],a[maxn]; void solve() { for(int i=2;i<=n;i++) for(int j=1;j<i;j++) if(a[i]>a[j]&&dp[i]<=dp[j]) dp[i]=dp[j]+1; sort(dp+1,dp+n+1); printf("%d\n",dp[n]); } int main() { while(~scanf("%d",&n)) { for(int i=1;i<=n;i++) { dp[i]=1; scanf("%d",&a[i]); } solve(); } return 0; }
POJ 2533-Longest Ordered Subsequence(DP)
标签:des style io color ar os sp for strong
原文地址:http://blog.csdn.net/qq_16255321/article/details/41174847