司机是个大坏蛋


私信TA

用户名:413845275

访问量:34500

签 名:

ctf菜鸡

等  级
排  名 287
经  验 5683
参赛次数 1
文章发表 38
年  龄 18
在职情况 学生
学  校
专  业

  自我简介:

TA的其他文章

解题思路:

..........这个题出的有问题,如果不知道这个定理的证明很难做


本题是一个定理,我们先来证明它是成立的。 
对于任一正整数a,不论a是奇数还是偶数,整数(a×a-a+1)必然为奇数。 
构造一个等差数列,数列的首项为(a×a-a+1),等差数列的差值为2(奇数数列),则前a项的和为: 
a×((a×a-a+1))+2×a(a-1)/2 
=a×a×a-a×a+a+a×a-a 
=a×a×a 
定理成立。证毕。 

通过定理的证明过程可知L所要求的奇数数列的首项为(a×a-a+1),长度为a。

编程的算法不需要特殊设计,可按照定理的证明过直接进行验证。



注意事项:





参考代码:

#include<stdio.h>

int main()

{

    int n,a,i;

    scanf("%d",&n);

    a=n*n-n+1;

    printf("%d*%d*%d=%d=%d",n,n,n,n*n*n,a);

    for(i=1;i<n;i++)

    {

        a=a+2;

        printf("+%d",a);

    }

}


 

0.0分

48 人评分

  评论区

说真的,要不是看到你的题解,打死我都没有想到,是题目有问题......
题目根本没有说清楚“尼科彻斯定理”的具体内容,百度后才知道,所谓的一连串奇数,实际上指的是 整数本身所代表的个数......


任何一个整数m的立方都可以写成m个连续奇数之和。
2017-11-24 23:46:49
大写的赞。。大佬就是大佬
2017-10-30 22:38:28
还可以这么简单 , 受教了
2017-08-27 15:52:24
懂了。原来printf还能这么用。受益非浅。
2017-08-19 22:12:16