HJ76--尼科彻斯定理

简介: HJ76--尼科彻斯定理

问题描述

验证尼科彻斯定理,即:任何一个整数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

而我们不知道的是在尼科彻斯定理中开始的数是:n*n-n+1

当知道开始的数后我们就能很方便的得到其他的数。

代码如下:

#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
int main()
{
  int n;
  while (EOF != scanf("%d", &n))
  {
    int* arr;
    arr = (int*)malloc(n * sizeof(int));
    int first = n * n - n + 1;
    if (n == 1)
    {
      printf("1\n");
    }
    if (n != 1)
    {
      for (int i = 0; i < n ; ++i)
      {
        arr[i] = first;
        first += 2;
      }
    }
    for (int i = 0; i < n; ++i)
    {
      printf("%d", arr[i]);
      if (i < n - 1)
      {
        printf("+");
      }
    }
    printf("\n");
    free(arr);
  }
  return 0;
}

输出

d724e079c7d323cbbc8390757dc56c5.png


目录
相关文章
|
5月前
lanqiao OJ 1505 剪邮票
lanqiao OJ 1505 剪邮票
41 0
|
5月前
lanqiao oj 1121 蓝桥公园(floyd)
lanqiao oj 1121 蓝桥公园(floyd)
59 0
|
5月前
lanqiao oj 1135 蓝桥幼儿园(并查集)
lanqiao oj 1135 蓝桥幼儿园(并查集)
40 0
|
5月前
lanqiao OJ 131 生命之树
lanqiao OJ 131 生命之树
41 0
|
5月前
lanqiao OJ 2097 青蛙过河
lanqiao OJ 2097 青蛙过河
19 0
|
5月前
lanqiao oj 131 生命之树
lanqiao oj 131 生命之树
37 0
|
5月前
|
存储 算法 C++
Leetcode第三十六题(有效的数独)
这篇文章介绍了如何使用C++编写一个算法来验证一个9x9数独是否有效,遵循数独的规则,即数字1-9在每一行、每一列和每个3x3宫内只能出现一次。
72 0
|
10月前
|
存储
每日一题啦(● ̄(エ) ̄●)(尼克切斯定理,等差数列)
每日一题啦(● ̄(エ) ̄●)(尼克切斯定理,等差数列)
47 0
|
10月前
蓝桥备战--分糖果OJ2928 贪心 分类讨论
蓝桥备战--分糖果OJ2928 贪心 分类讨论
106 0
|
算法
华为机试HJ76:尼科彻斯定理
华为机试HJ76:尼科彻斯定理