zoukankan      html  css  js  c++  java
  • HDU 5842 Lweb and String

    Lweb and String

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)
    Total Submission(s): 368    Accepted Submission(s): 243


    Problem Description
    Lweb has a string S.

    Oneday, he decided to transform this string to a new sequence. 

    You need help him determine this transformation to get a sequence which has the longest LIS(Strictly Increasing). 

    You need transform every letter in this string to a new number.

    A is the set of letters of SB is the set of natural numbers. 

    Every injection f:AB can be treat as an legal transformation. 

    For example, a String “aabc”, A={a,b,c}, and you can transform it to “1 1 2 3”, and the LIS of the new sequence is 3. 

    Now help Lweb, find the longest LIS which you can obtain from S.

    LIS: Longest Increasing Subsequence. (https://en.wikipedia.org/wiki/Longest_increasing_subsequence)
     
    Input
    The first line of the input contains the only integer T,(1T20).

    Then T lines follow, the i-th line contains a string S only containing the lowercase letters, the length of S will not exceed 105.
     
    Output
    For each test case, output a single line "Case #x: y", where x is the case number, starting from 1. And y is the answer.
     
    Sample Input
    2 aabcc acdeaa
     
    Sample Output
    Case #1: 3
    Case #2: 4
     
    Author
    UESTC
     
    Source

    解析:说了那么多,其实很简单,就是求有多少种字母。

    #include <cstdio>
    #include <cstring>
    
    const int MAXN = 1e5+5;
    char s[MAXN];
    bool vis[30];
    
    int main()
    {
        int t, cn = 0;
        scanf("%d", &t);
        while(t--){
            scanf("%s", s);
            memset(vis, 0, sizeof(vis));
            int res = 0;
            for(int i = 0; s[i] != ''; ++i){
                if(!vis[s[i]-'a']){
                    vis[s[i]-'a'] = true;
                    ++res;
                }
            }
            printf("Case #%d: %d
    ", ++cn, res);
        }
        return 0;
    }
    

      

  • 相关阅读:
    yii2中的url美化
    一级域名301重定向到www二级域名
    使用meta来控制浏览器的渲染方式
    同一页面不同编码的提交处理
    Yii2.0 UrlManager
    sqlsever连接两个不同服务器上的数据库进行查询
    php 实现传入参数的传出
    xcode如何修改项目名称
    ios如何实现应用之间的跳转
    ios程序如何实现系统自带的分享
  • 原文地址:https://www.cnblogs.com/inmoonlight/p/5773467.html
Copyright © 2011-2022 走看看