n = int(input())
h = list(map(int, input().split()))
h_partial_sums = [0] * (n + 1)
h_squares_partial_sums = [0] * (n + 1)
h_cubes_partial_sums = [0] * (n + 1)
for i in range(n):
h_partial_sums[i + 1] = h_partial_sums[i] + h[i]
item = h[i] * h[i]
h_squares_partial_sums[i + 1] = h_squares_partial_sums[i] + item
item *= h[i]
h_cubes_partial_sums[i + 1] = h_cubes_partial_sums[i] + item
for _ in range(int(input())):
l, r = map(int, input().split())
num_items = r - l + 1
mu = (h_partial_sums[r] - h_partial_sums[l - 1]) / num_items
h2 = h_squares_partial_sums[r] - h_squares_partial_sums[l - 1]
d = h2 / num_items - mu * mu
h3 = h_cubes_partial_sums[r] - h_cubes_partial_sums[l - 1]
a = d ** (-1.5) * ((h3 - 3 * mu * h2) / num_items + 2 * mu * mu * mu)
print(a)
Помогите ему решить эту задачу. Асимметрию множества чисел {hl , . . . , hr } стоит вычислять по формуле: Замечание
В примере μ = 3.8, а σ2 = 6.16.
Формат входных данных
Первая строка содержит единственное натуральное число N (1≤ N ≤ 105) — число домов на набережной.
Вторая строка содержит N натуральных чисел hi (1≤ hi ≤ 103) — высота i-го дома. Дома пронумерованы подряд от 1 до n. Гарантируется, что любые два соседних дома имеют разную высоту.
Третья строка содержит единственное натуральное число Q (1≤ N ≤ 105) — число фотографий, сделанных Дмитрием.
Следующие Q строк содержат описания соответствующих фотографий: два разделённых пробелом натуральных числа lt и rt (1≤ lt < rt ≤ n) — номера левого и правого дома на t-й фотографии.
Формат выходных данных
Выведите Q вещественных чисел с плавающей точкой: результаты оценки соответствующих фотографий.
Ответ считается верным, если его абсолютная или относительная погрешность не превышает 10-6.
Пример 1
Входные данные:
5
1 2 3 5 8
2
1 5
1 3
Выходные данные:
0.621634857962435
0.0