#include <iostream>
using namespace std;
int main()
{
int N;
cin >> N;
int* arr = new int[N];
for (int i(0); i < N; ++i) cin >> arr[i];
int count(N - 1);
int result = 0;
for (; count >= 0 && result < arr[count]; --count) {
if (count > 0) result += arr[count] - arr[count - 1];
}
int sum = 0;
for (int i(count + 1); i < N; ++i) sum += arr[i];
result = sum / (N - count);
if (sum > result*(N - count)) ++result;
cout << result;
}
Объяснение:
Первое задание:
Вам нужно только написать ввод и вывод, формула уже написана.
Код (Python 3):
x, y, z = map(int, input().split())
u=(max(x,y,z) - min(x,y,z))/(max(x,y,z)+min(x,y,z))
print(u)
Пример ввода 1:
1 1 1
Пример вывода 1:
0.0
Пример ввода 2:
3 2 1
Пример вывода 2:
0.5
Второе задание:
Находим максимальное число, и если текущее число не оно, на него можно умножать. Можно использовать список, так решение будет короче, я использую три переменные x, y, z.
Код (Python 3):
x, y, z = map(int, input().split())
max_xyz = max(x, y, z)
product = 1
if x != max_xyz:
product *= x
if y != max_xyz:
product *= y
if z != max_xyz:
product *= z
print(product)
Пример ввода 1:
1 2 3
Пример вывода 1:
2
Пример ввода 2:
3 2 1
Пример вывода 2:
2
Объяснение:норм?