开始觉得是 最长不增序列。。。
但是就那么随笔写了俩个for 就AC了。。。。。。
估计数据弱吧。。。。
View Code
1 #include2 const int maxn = 200005; 3 int a[ maxn ],vis[ maxn ]; 4 int main(){ 5 int n; 6 while( scanf("%d",&n)==1 ){ 7 for( int i=1;i<=n;i++ ){ 8 scanf("%d",&a[ i ]); 9 vis[ i ]=0;10 }11 int ans=0;12 //int max=a[1];13 for( int i=1;i<=n;i++ ){14 if( vis[i]==1 ) continue;15 int max=a[ i ];16 ans++;17 for( int j=i+1;j<=n;j++ ){18 if( a[j]<=max&&vis[j]==0 ){19 max=a[j];20 vis[j]=1;21 }22 }23 }24 printf("%d\n",ans);25 }26 return 0;27 }