资源限制
内存限制:256.0MB C/C++时限:1.0s Java时间限制:3.0s Python时限:5.0s
问题描述
求1+2+3+...+n的值。
输入格式
输入包括一个整数n。
输出格式
一行输出,包括一个整数,表示1+2+3+...+n的值。
样例输入
4
样例输出
10
样例输入
100
注:有些试题会给出多组样例输入输出,以帮助您更好地做题。
一般来说,这些样本都需要在提交前通过测试,但这并不意味着这些样本数据是正确的。你的程序是完全正确的。潜在的错误仍然可能导致你的低分。
样例输出
5050
数据规模和协议
1 <= n <= 1,000,000,000。
注:请注意这里的数据规模。
这个问题的直接想法是直接使用一个循环来积累。然而,当数据规模较大时,这种“暴力”方法往往会导致加班。此时,您需要考虑其他方法。你可以试试。如果您使用1万个程序作为您的程序输入,您的程序是否可以在上述规定的期限内运行。
这个问题的另一个值得注意的是,答案的大小不是你语言默认的整形手术(int)在范围内,如果使用整形手术来保存结果,就会导致结果错误。
如果你使用C++或C语言并准备使用printf输出结果,你的格式字符串应该写成%I64d输出long long类型的整数。
上代码:import java.util.Scanner; public class Main { public static void main(String[] args) {// TODO Auto-generated method stubScanner sc=new Scanner(System.in);int n=sc.nextInt();long num=0;for(int i=1;i<=n;i++) {num=num+i;}System.out.println(num);} }