羊蹓狼 发表于 2024-9-6 01:16:02

C++机试——尼克切斯定理

题目

形貌

验证尼科彻斯定理,即:任何一个整数m的立方都可以写成m个一连奇数之和。
例如:
1^3=1
2^3=3+5
3^3=7+9+11
4^3=13+15+17+19
输入一个正整数m(m≤100),将m的立方写成m个一连奇数之和的情势输出。
数据范围:1≤m≤100 1≤m≤100 
输入形貌:

输入一个int整数
输出形貌:

输出分解后的string
思路

        观察发现整数M的平方为一连奇数之和的中央值,定义为middle,数列第一项为middle-M+1,则在每一项末尾添加+号既得输出字符串。
代码

#include <iostream>
using namespace std;

int main() {
        int num;
        cin >> num;
        int middle = num * num;
        for (int i = 0; i < num; i++)
        {
                cout << middle - num + 1 + 2 * i;
                if (i != num - 1)
                {
                        cout << "+";
                }

        }
        return 0;
}


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: C++机试——尼克切斯定理