以下是使用 C++ 编写的解决方案:

#include <iostream>
#include <vector>

int main() {
    int x;
    std::cin >> x;

    for (int i = 0; i < x; i++) {
        int n;
        std::cin >> n;

        std::vector<int> sequence(n);

        // 构造序列
        int sum = 0;
        for (int j = 0; j < n; j++) {
            sequence[j] = (j + 1) * n;
            sum += sequence[j];
        }

        // 调整序列使其满足条件
        for (int j = 0; j < n; j++) {
            sequence[j] += (sum % n == 0) ? 0 : n - (sum % n);
        }

        // 输出序列
        for (int j = 0; j < n; j++) {
            std::cout << sequence[j] << " ";
        }
        std::cout << std::endl;
    }

    return 0;
}

输入示例:

3
3
4
5

输出示例:

9 6 9 
16 20 16 20 
25 30 35 30 25 
C++ 编程实现:构造满足特定条件的序列

原文地址: https://www.cveoy.top/t/topic/p2cp 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录