题解 | #尼科彻斯定理#

尼科彻斯定理

https://www.nowcoder.com/practice/dbace3a5b3c4480e86ee3277f3fe1e85

#define  _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
//验证尼科彻斯定理,即:任何一个整数m的立方都可以写成m个连续奇数之和。
int main()
{
	//输入数字m
	int m;
	scanf("%d", &m);
	//根据观察得出每个数字m的立方拆开的首项是有规律的: 1 3 7 13 21 31 42  。。。。。。。他们之间的差值是正偶数2 4 6 7 810.。。
	//由此便可以创建出一个数组存放首项,之后的每一项都是+2得到的连续的奇数,由此全部相加m个连续奇数即可验证定理
	
	//得到每一个首项
	int arr[100]; 
	int i = 1;
	int n = 0;
	for (int j = 0; j < 100; j++)
	{
		i = i + n;
		arr[j] = i;
		n = n + 2;
	}

	//定理得出:
	if (m >= 1 && m <= 100)
	{
		int k = 0;
		int i = 0;
		if (i < m - 1)
		{
			for (k = arr[m - 1]; i < m - 1; i++)
			{
				printf("%d+", k);
				k = k + 2;
			}
		}
		if (i == m - 1)
		{
			printf("%d", k);
		}

	}
	return 0;
}

#算法简单题##c语言编程#
全部评论

相关推荐

01-30 09:45
燕山大学 Java
喵_coding:这种直接跑就完事了 哪有毕业了才签合同 任何offer和三方都没有的
点赞 评论 收藏
分享
01-30 22:03
门头沟学院 Java
用微笑面对困难:我滴妈,【俩月】【实习】【主管】仨debuff吃满了,独立设计开发的项目写了绝大占比的运营板块,你独立开发,那维护、问题复盘、日志更新、bug、策划书全是自己整的? 不建议写那么大,可以从小出发更容易
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
正在热议
更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务