38. Count and Say go语言

go语言

func countAndSay(n int) string {
    var nums = []int{1}
	
    if n == 1{
        return "1"
    }
    
    for i := 1; i < n ; i ++{
        var newNums []int
        var t int = 1
		fmt.Println(nums)
		var j int
        for j = 1 ; j < len(nums) ;j++{
            if nums[j] == nums[j - 1]{
                t++
            }else{
                newNums = append(newNums, t, nums[j - 1])
                t = 1
            }
        }
		newNums = append(newNums, t, nums[j - 1])
        nums = newNums
    }
    
    var str string = ""
    for i := 0; i < len(nums); i++{
        str += strconv.FormatInt(int64(nums[i]), 10)
    }
    return str
}

猜你喜欢

转载自blog.csdn.net/dyd961121/article/details/81297387