poj1887(最长递减子序列)

来源:互联网 发布:关键词排名优化技巧 编辑:程序博客网 时间:2024/05/18 00:38

      题目链接:http://poj.org/problem?id=1887

      题意:题目很长,但内容很简单,就是求一串数字的最长递减子序列的长度。

代码:

#include<stdio.h>int arr[10010];int dp[10010];int main(){int ncase=1;while(1){ int i=0;int len;arr[0]=0;while(arr[i] > -1){i++;scanf("%d",&arr[i]);}if(i == 1)break;for(len = 1;len<i;len++)dp[len] = 1;len--;for(int j=2;j<=len;j++){int temp=0;for(int k = j-1;k>=1;k--){    if(arr[j] < arr[k] && temp<dp[k]){temp = dp[k];}}if(temp !=0)dp[j] = temp+1;}int ans =0;for(i=1;i<=len;i++)if(ans < dp[i])ans = dp[i];printf("Test #%d:\n",ncase++);printf("  maximum possible interceptions: %d\n\n",ans);}return 0;}


 

原创粉丝点击