zoukankan      html  css  js  c++  java
  • 038 Count and Say 数数并说

    数数并说序列是一个整数序列,第二项起每一项的值为对前一项的计数,其前五项如下:
    1.     1
    2.     11
    3.     21
    4.     1211
    5.     111221
    1 被读作 "一个一" 即 11。
    11 被读作  "两个一" 即 21。
    21 被读作  "一个二 和 一个一" 即 1211。
    给一个正整数 n ,输出数数并说序列的第 n 项。
    注意:该整数序列的每项都输出为字符串。
    例 1:
    输入: 1
    输出: "1"
    例 2:
    输入: 4
    输出: "1211"
    详见:https://leetcode.com/problems/count-and-say/description/

    实现语言:Java

    class Solution {
        public String countAndSay(int n) {
            if(n<=0){
                return null;
            }
            String s="1";
            for(int i=1;i<n;++i){
                StringBuilder tmp=new StringBuilder();
                int cnt=1;
                for(int j=1;j<s.length();++j){
                    if(s.charAt(j)==s.charAt(j-1)){
                        ++cnt;
                    }else{
                        tmp.append(cnt);
                        tmp.append(s.charAt(j-1));
                        cnt=1;
                    }
                }
                tmp.append(cnt);
                tmp.append(s.charAt(s.length()-1));
                s=tmp.toString();
            }
            return s;
        }
    }
    

     实现语言:C++

    class Solution {
    public:
        string countAndSay(int n) {
            if(n<=0)
            {
                return nullptr;
            }
            string s="1";
            for(int i=1;i<n;++i)
            {
                string tmp="";
                int cnt=1;
                for(int j=1;j<s.size();++j)
                {
                    if(s[j]==s[j-1])
                    {
                        ++cnt;
                    }
                    else
                    {
                        tmp=tmp+char(cnt+'0')+s[j-1];
                        cnt=1;
                    }
                }
                s=tmp+char(cnt+'0')+s[s.size()-1];
            }
            return s;
        }
    };
    
  • 相关阅读:
    php数据缓存到文件类设计
    php静态文件缓存示例
    php array_merge和“+”的区别和使用《细说php2》
    kafka环境安装及简单使用(单机版)
    Protobuf的上手使用
    Java8新特性概览
    Mock测试框架(Mockito为例)
    Java序列化与反序列化
    系统/项目环境搭建
    关于Tomcat服务器中的协议及请求过程
  • 原文地址:https://www.cnblogs.com/xidian2014/p/8688714.html
Copyright © 2011-2022 走看看