Решение задачи "Максимумы" с Codeforces

Без пояснения   Просмотров: 8


У Алисии есть массив неотрицательных целых чисел a1,a2,…,an. Для всех 1≤i≤n, она нашла число xi=max(0,a1,…,ai−1). Обратите внимание, что для i=1, xi=0.

Например, если у Алисии был массив a={0,1,2,0,3}, то x={0,0,1,2,2}.

Затем она вычислила значения массива b1,b2,…,bn: bi=ai−xi.

Например, если у Алисии был массив a={0,1,2,0,3}, то b={0−0,1−0,2−1,0−2,3−2}={0,1,1,−2,1}.

Алисия дала вам массив b1,b2,…,bn и попросила восстановить массив a1,a2,…,an. Можете ли вы помочь ей с этой задачей?

Код

#include <iostream>
using namespace std;
main() {
	int n;
	cin >> n;
	int a, b, x = 0;
	for (int i = 0; i < n; ++i) {
		cin >> b;
		cout << b + x << ' ';
		x = max(x, b + x);
	}
}

         

 Администратор Photo Автор: Администратор


Отправить решение задачи
Чтобы отправить решение вам нужно войти в систему или зарегистрироваться

Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться