Advertisement

蓝桥杯习题集(基础)

阅读量:

序列求和

问题描述
计算从1到n的连续整数之和。
输入格式
输入包含一个整数n。
输出格式
输出一行内容,为一个整数,代表从1到n的所有整数相加的总和。
样例输入
4
样例输出
10
样例输入
100
样例输出
5050
数据规模与约定
1 <= n <= 1,000,000,000

若采用逐项累加的方式进行求解,提交时可能会因运行时间过长而出现超时现象,因此最优的解决途径是借助数学公式进行计算。此外,还需特别关注数据的范围问题,该数值已超出int类型所能表示的范围。

复制代码
    #include<stdio.h>
    int main()
    {
    int i;
    long long int n,s=0;
    scanf("%lld",&n);
    if(n>=2)
    {
        s=(1+n)*n/2;
    }
    else
    s=1;
    printf("%lld",s);
    return 0;
    }
    
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      

全部评论 (0)

还没有任何评论哟~