zoukankan      html  css  js  c++  java
  • 38-报数

    报数序列是一个整数序列,按照其中的整数的顺序进行报数,得到下一个数。其前五项如下:
    
    1.     1
    2.     11
    3.     21
    4.     1211
    5.     111221
    1 被读作  "one 1"  ("一个一") , 即 1111 被读作 "two 1s" ("两个一"), 即 2121 被读作 "one 2",  "one 1" ("一个二" ,  "一个一") , 即 1211。
    
    给定一个正整数 n(1 ≤ n ≤ 30),输出报数序列的第 n 项。
    
    注意:整数顺序将表示为一个字符串。
    
    示例 1:
    
    输入: 1
    输出: "1"
    示例 2:
    
    输入: 4
    输出: "1211"
    
    
     public static String countAndSay(int n) {
            String b="1";
            if (n==1)
                return b;
            StringBuilder s=new StringBuilder("11");
            for (int i=2;i<n;i++){
                char a=s.charAt(0);
                int count=1;
                StringBuilder str=new StringBuilder();
                for (int j=1;j<s.length();j++){
                    if (a==s.charAt(j)){
                        count++;
                    }else {
                        str.append(count+""+a);
                        count=1;
                        a=s.charAt(j);
                    }
                }
                str.append(count+""+a);
                s=str;
            }
            return s.toString();
        }
  • 相关阅读:
    第一次作业
    第0次作业
    第14、15周作业
    第七周作业
    第六周作业
    第四周作业
    第三周作业
    第4次作业
    第3次作业
    第二次作业
  • 原文地址:https://www.cnblogs.com/dloading/p/10858983.html
Copyright © 2011-2022 走看看