• hdu 4148 Length of S(n) (坑爹的规律题)


    题意不明确就是让你根据前面的几个式子来找规律,找了我足足两个小时啊!!有点坑!!

    S(1)=1, 
    S(2)=11,由S(1)从左往右1个1,所以为11;
    S(3)=21,由S(2)从左往右2个1所以为21;
    S(4)=1211,有S(3)从左往右1个2,1个1,所以为1211;
    S(5)=111221,同理1个1,1个2,2个1,所以为111221
    S(6)=312211,同理为3个1,2个2,1个1,所以为312211

    知道规律了题目就容易解决了!!

    代码实现:

    #include<stdio.h>
    #include<string.h>
    int main()
    {
        char a[31][10000];
        int b[31],i,j,num,n,len;
        strcpy(a[1],"1");
        b[1]=1;
        for(i=2;i<=30;i++)
        {
            len=0;
            for(j=0;j<b[i-1];)
            {
                num=1;
                while(a[i-1][j]==a[i-1][j+1])
                {
                    num++;
                    j++;
                }
                a[i][len++]=num+'0';
                a[i][len++]=a[i-1][j];
                j++;
            }
            a[i][len]='\0';
            b[i]=len;
        }
        while(scanf("%d",&n)!=EOF&&n)
        {
            printf("%d\n",b[n]);
        }
        return 0;
    }
  • 相关阅读:
    爬虫基础 2.1 http原理
    爬虫基础 2.1 http原理
    3.29上午
    3.28
    3.27下午
    3.27上午
    3.24上午
    3.23下午
    3.23上午
    3.22上午
  • 原文地址:https://www.cnblogs.com/jiangjing/p/2868090.html
Copyright © 2020-2023  润新知