【Leetcode】Count and Say

题目链接:https://leetcode.com/problems/count-and-say/

题目:

The count-and-say sequence is the sequence of integers beginning as follows:
1, 11, 21, 1211, 111221, ...

1 is read off as "one 1" or 11.
11 is read off as "two 1s" or 21.
21 is read off as "one 2, then one 1" or 1211.

Given an integer n, generate the nth sequence.

Note: The sequence of integers will be represented as a string.

思路:

题目看懂了就好做了。。

算法:

public String countAndSay(int n) {  
    String r = "1";  
    for (int i = 1; i < n; i++) {  
        String t = "";  
        int count = 0;  
        String flag = r.charAt(0) + "";  
        for (int j = 0; j < r.length(); j++) {  
            if ((r.charAt(j) + "").equals(flag)) {  
                count++;  
            } else {  
                t += count + "" + flag;  
                flag = r.charAt(j) + "";  
                count = 1;  
            }  
        }  
        t += count + "" + flag;  
        r = t;  
    }  
    return r;  
}  


阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yeqiuzs/article/details/51558595
个人分类: leetcode
所属专栏: Leetcode题解java版
上一篇【Leetcode】Longest Increasing Path in a Matrix
下一篇【Leetcode】Best Time to Buy and Sell Stock
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭