题解 | #尼科彻斯定理#

尼科彻斯定理

https://www.nowcoder.com/practice/dbace3a5b3c4480e86ee3277f3fe1e85

package main

import (
	"fmt"
)

func calculate(n int) []int {
    var ans []int

    if n % 2 == 1 {
        mid := n * n
        leftStart := mid - 2 * (n / 2)
        for i:=0; i<n; i++ {
            ans = append(ans, leftStart)
            leftStart += 2
        }
    } else {
        mid := n * n
        leftStart := mid - 2 * (n / 2) + 1
        for i:=0; i<n; i++ {
            ans = append(ans, leftStart)
            leftStart += 2
        }
    }

    return ans
}

func main() {
    var n int
    fmt.Scan(&n)

    nums := calculate(n)

    var s string
    for _, num := range nums {
        s = s + fmt.Sprintf("%d+", num)
    }

    fmt.Println(s[:len(s)-1])
}
// 本题输入为一个整数数字,所以采用:fmt.Scan(&n)

全部评论

相关推荐

Dream_coding:你是不是只投大厂了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务