51nod 2094 前缀和

2094 前缀和

题目链接:http://www.51nod.com/Challenge/Problem.html#problemId=2094

题目描述:

输入一个长度为n(1 <= n <= 100000)数组ai(0<=ai<=1000),输出他的前缀和。

前缀和中的第i项,表示原数组中的前i项的和。

输入:

第一行一个整数n,表示数字长度
接下来n行,每行一个整数ai,表示数组的内容。

输出:

输出第一行为数组长度n
接下来n行为前缀和的结果。
输入样例
3
1
2
3
输出样例
3
1
3
6

解题思路:

一维前缀和

代码如下:

Java

import java.util.Scanner;

public class Main {
    
    
	public static void main(String[] args) {
    
    
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int sum = 0;
		System.out.println(n);
		int[] a = new int[100005];
		for (int i = 1; i <= n; i++) {
    
    
			a[i] = sc.nextInt();
			sum += a[i];
			System.out.println(sum);
		}
		System.out.println();
	}
}

C++

#include<iostream>
#include<algorithm>
#include<cstdio>

using namespace std;

int main(){
    
    
	int n;
	int sum=0;
	cin>>n;
	cout<<n<<endl; 
	int a[100005];
	for(int i=1;i<=n;i++){
    
    
		cin>>a[i];
		sum+=a[i];
		cout<<sum<<endl;
	}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_45894701/article/details/115335806