南阳理工17题

来源:互联网 发布:hp扫描仪软件 编辑:程序博客网 时间:2024/05/20 12:48
#include<iostream>  #include<cstring>     using namespace std;     int dp[10000];  char s[10000];     int SubSeq(char *s, int len)  {      int i,j,ans,max;      ans=0;      for(i=0;i<len;i++)      {          max=0;          for(j=i-1;j>=0;j--)          {              if(s[j]<s[i])                  if(max<dp[j])                      max=dp[j];                             }          dp[i]=max+1;          if(ans<dp[i])              ans=dp[i];      }         return ans;  }     int main()  {      int n,m;      cin >> n;;      while(n--)      {          cin>>s;          m=strlen(s);          memset(dp,0,sizeof(dp));          cout << SubSeq(s,m)<<endl;      }      return 0;  }