码迷,mamicode.com
首页 > 其他好文 > 详细

【字符串】38. 外观数列

时间:2020-05-03 18:42:54      阅读:60      评论:0      收藏:0      [点我收藏+]

标签:img   int   for   color   return   i++   bsp   size   题目   

题目:

技术图片

 

 

解答:

递归+记忆。

class Solution {
public:
    unordered_map<int,string> map;
    string countAndSay(int n) 
    {
        string res;
        if(map.count(n)) 
        {
            return map[n];
        }
        else if(n==1) 
        {
            res="1";
        }
        else if(n==2) 
        {
            res="11";
        }
        else
        {
            string pre=countAndSay(n-1);
            int count = 1;
            for(int i=0;i < pre.size(); i++)
            {
                if(i+1==pre.size()||pre[i]!=pre[i+1]) 
                {
                    res+=(to_string(count)+pre[i]);
                    count=1;
                }
                else 
                {
                    count++;
                }
            }
        }
        map[n]=res;
        return res;
    }
};

 

【字符串】38. 外观数列

标签:img   int   for   color   return   i++   bsp   size   题目   

原文地址:https://www.cnblogs.com/ocpc/p/12822677.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!