华为OJ基础篇-尼科彻斯定理

验证尼科彻斯定理,即:任何一个整数m的立方都可以写成m个连续奇数之和。
例如:
1^3=1
2^3=3+5
3^3=7+9+11
4^3=13+15+17+19

void hwOJ(){
    int a = 6;
    cin >> a;
    int tag = a*a*a;
    int b = 0;
    int x = 1,i=0;
    string tmp, str;
    stringstream ss;
    while (b != tag){
        x= a*a - (a - 1);
        for (i=0; i < a; ++i){
            ss << x;
            ss >> tmp;
            if (i != a - 1){ tmp = tmp + "+"; }
            b += x;
            str.append(tmp);
            x += 2;
            ss.clear();
        }

    }
    cout << str << endl;
}

你可能感兴趣的:(C++)