zoukankan      html  css  js  c++  java
  • 字典序问题

    找到其中的递推关系即可。

    #include"iostream"
    #include"stdio.h"
    #include"string"
    #include"string.h"
    using namespace std;
    const int mx=105;
    char str[mx];
    long long cnt[mx][mx];
    long long tot[mx];
    int main()
    {
        freopen("E:\in.txt","r",stdin);
        int t,i,j,k;
        memset(tot,0,sizeof(tot));
        memset(cnt,0,sizeof(cnt));
        for(i=1;i<=26;i++) cnt[i][1]=1;
        for(i=1;i<=26;i++) tot[1]+=cnt[i][1];
        for(k=2;k<=6;k++)
        {
            for(i=1;i<=26;i++)
            {
                for(j=i+1;j<=26;j++)
                {
                        cnt[i][k]+=cnt[j][k-1];
                }
            }
        }
        for(k=2;k<=6;k++)
        {
            for(i=1;i<=26;i++)
            {
                tot[k]+=cnt[i][k];
            }
        }
    
        cin>>t;
        while(t--)
        {
    
            cin>>str;
            int len=strlen(str);
            int sum=0;
            for(i=1;i<len;i++)
                sum+=tot[i];
            for(i=0;i<len;i++)
            {
                int t;
                if(i==0) t=1;
                else t=str[i-1]-96+1;
                for(j=t;j<str[i]-96;j++)
                {
                     sum+=cnt[j][len-i];
                }
            }
            cout<<sum+1<<endl;
        }
        return 0;
    }
    View Code
  • 相关阅读:
    bootstrap只有遮罩层没有对话框的解决方法
    从陈坤微信号说起:微信公众平台开发者的江湖
    微信5.0绑定银行卡教程
    web.xml
    java 泛型
    Struts2
    Hibernate
    SQL Joins
    case when
    log4j
  • 原文地址:https://www.cnblogs.com/acm-jing/p/4788425.html
Copyright © 2011-2022 走看看