※※※大家好!我是同学〖森〗,一名计算机爱好者,今天让我们进入刷题模式。若有错误,请多多指教。
👍 点赞 ⭐ 收藏 📝留言 都是我创作的最大的动力!
目录
※※※大家好!我是同学〖森〗,一名计算机爱好者,今天让我们进入刷题模式。若有错误,请多多指教。
题目描述:
示例:
输入:6
输出:31+33+35+37+39+41
问题分析
1、这道题的关键在于知道规律后,能够找到第 m 个数据立方的起始奇数,从这个起始奇数开始,组成连续的 m 个奇数项之和的表达式即可。2、而起始奇数有个规则: m^3 的起始奇数值等于 m * (m - 1) + 1。证明:x ,x+2,x+4 …… y-4, y-2, y。 共m个数根据题意可知:y - x = 2*(m-1)( (x + y) / 2 )*m = m^3 等差数列求和公式:Sn=n(a1+an)/2可解的 x = m * (m - 1)+ 13、多项输入问题。
程序源码
#include<stdio.h>
int main()
{
int m = 0;
int start = 0;
while (scanf("%d", &m) != EOF) //多项输入
{
start = m * (m - 1) + 1; //找到对应m^3的起始奇数
int sum = 0;
printf("%d", start);
for (int i = 1; i < m; i++) //打印剩余m-1个奇数
{
start += 2;
printf("+%d", start);
}
printf("\n");
}
return 0;
}
运行结果