题解 | #尼科彻斯定理#

尼科彻斯定理

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

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int input = in.nextInt();
        int product = input * input * input;
        StringBuffer stringBuffer = new StringBuffer();
        int average = 0;
        if (input % 2 == 0) {//偶数个
            average = product / input;
            //average-1 average+1
            for (int i = (-1) * (input / 2); i <= (input / 2); i++) {
                if (i == 0) {
                    continue;
                }
                int k = average + i / Math.abs(i) * ((Math.abs(i) - 1) * 2 + 1);
                stringBuffer.append(k + "+");
            }
        } else {//奇数个
            average = product / input;
            for (int i = (-1) * ((input - 1) / 2); i <= (input - 1) / 2; i++) {
                int k = average + 2 * i;
                stringBuffer.append(k + "+");
            }
        }
        String s = stringBuffer.toString();
        String substring = s.substring(0, s.length() - 1);
        System.out.println(substring);
    }
}

解题思路:

1, 根据立方值和数字的个数, 可以求得最终数字集合的平均值;

2, 根据数字个数可以拼接得出最终的数组集合

全部评论

相关推荐

02-10 13:41
西南大学 Java
牛客12789347...:你们这28届的干啥呀,大学玩舒服了吗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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