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


目录
相关文章
|
8月前
|
算法
【算法】 用Prolog解决谁是凶手问题
【算法】 用Prolog解决谁是凶手问题
110 0
|
人工智能 数据安全/隐私保护
华为机试HJ36:字符串加密
华为机试HJ36:字符串加密
127 0
|
C++
【PAT甲级 - C++题解】1088 Rational Arithmetic
【PAT甲级 - C++题解】1088 Rational Arithmetic
62 0
|
存储 Shell
HDOJ/HDU 1804 Deli Deli(英语单词复数形式~)
HDOJ/HDU 1804 Deli Deli(英语单词复数形式~)
116 0
HDOJ(HDU) 2078 复习时间
HDOJ(HDU) 2078 复习时间
142 0
|
数据安全/隐私保护
数论 - SGU 105 DIV3
SGU 105-DIV 3 Problem's Link   Mean:  定义这样一种数列:1,12,123.. 给出一个n,求这个数列中能被3整除的数的个数. analyse: 这道题可以用分析的方法解决:   对于正整数k,k+1,k+2总有    k+(...
945 0

热门文章

最新文章