题解 | #尼科彻斯定理#
尼科彻斯定理
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)
