题解 | #蛇形矩阵#

蛇形矩阵

https://www.nowcoder.com/practice/649b210ef44446e3b1cd1be6fa4cab5e

package main

import (
    "fmt"
)
// 1 3 6 10
// 2 5 9
// 4 8
// 7
func main() {
    var n int
    fmt.Scan(&n)

    row := make([]int, 0)
    row = append(row, 1)
    //生成第一行
    for i:= 1;i<n;i++{
        row = append(row, row[i-1]+1+i)
    }

    //每一行是上一行(对角)的数减1
    for i:=0;i<n;i++{
        for j:=i;j<n;j++{
            //第一行直接打印,第二行是第一行(对角)减1,第三行是第一行减2,以此类推
            fmt.Printf("%d ", row[j]-i)
        }
        fmt.Println()
    }
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务