题解 | #尼科彻斯定理#

尼科彻斯定理

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

#include <stdio.h>

int main() {
    int m;//记录待计算的数据
    //因为对于任意的m,m%2==0时其中轴m^2一定为偶数
    //否则为奇数,因此只需要输出对应的等差数列即可
    scanf("%d",&m);
    //if(m%2==0){
        for(int i=-(m-1);i<m;i+=2){
            if(i==-(m-1))
                printf("%d",m*m+i);
            else
                printf("+%d",m*m+i);
        }
    //}
    // else{
    //     for(int i=-(m-1);i<m;i+=2){
    //         if(i==-(m-1))
    //             printf("%d",m*m+i);
    //         else
    //             printf("+%d",m*m+i);
    //     }
    // }
    printf("\n");
    return 0;
}

数学计算一下中轴的位置,最开始考虑需要进行奇偶数的分别考虑,后来发现奇偶数都是一致的

中轴的位置是m*m,奇数偏移2*m/2及m-1个单位,偶数偏移2*m/2-1即m-1个单位。

全部评论

相关推荐

点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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