码迷,mamicode.com
首页 > 其他好文 > 详细

最长升序字数列

时间:2017-04-07 22:18:06      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:stream   max   代码实现   cout   names   数列   code   main   logs   

1.代码实现

 1 #include<iostream>
 2 using namespace std;
 3 int max(int x,int y)
 4 {
 5     return x>y? x:y;
 6 }
 7 int main()
 8 {
 9     int n,src,a[100],dp[100];
10     while(cin>>n){
11         src=0; 
12         for(int i=0;i<n;i++){
13         cin>>a[i];
14         dp[i]=1;
15         }
16         for(int i=0;i<n;i++){
17             for(int j=0;j<i;j++){
18                 if(a[i]>a[j]){
19                     dp[i]=max(dp[i],dp[j]+1);
20                     //对第a[i]与a[j]比较,dp[i]与dp[j]+1比较,来控制dp[i]的取值    
21                 }
22             }
23             src=max(src,dp[i]);
24             //利用之前的for语句,遍历每个相邻数组,取最大值 
25         }
26         cout<<src<<endl;
27     }
28 }

2.运行结果

7
1 2 4 3 6 5 7
5
8
1 4 6 9 3 5 10 16
6

 

最长升序字数列

标签:stream   max   代码实现   cout   names   数列   code   main   logs   

原文地址:http://www.cnblogs.com/2016024291-/p/6679715.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!