6. Взвешенное среднее арифметическое числового вектора по вектору

☰ Теория

Для набора чисел \(X=(x_1,x_2,\cdots x_n)\) и набора "весов" \(M=(m_1,m_2,\cdots m_n)\) взвешенное среднее арифметическое значение определяется следующим образом:

                               \(\chi = \frac{x_1m_1+x_2m_2+\cdots + x_nm_n} {m_1+m_2+\cdots +m_n}\)

Обычно на набор весов накладывается условие "положительности всех весов". Здесь мы ограничемся требованием, что \(sum(M) \neq 0\) 
Нетрудно заметить, что среднее арифметическое - это взвешенное среднее арифметическое по набору (1, ..., 1)

Задача. 
Для новогодних подарков взяли смесь из \(n\) сортов конфет. Конфеты \(i-го\ сорта\ стоят\ a_i\ руб/кг\ и\ их\ взяли\ b_i\ кг \).
Определите стоимость кг смеси конфет.
Решение: Надо найти взвешенное среднее арифметическое набора "стоимостей" по набору "весов".

Даны два числовых вектора одинакового размера (списоков/кортежей чисел)  \(A, B\).   
Напишите программу, которая определит взвешенное среднее арифметическое вектора \(A\) с весами вектора \(B\).

Программа должна возвращать одно число \(\chi\) - взвешенное среднее арифметическое.
Гарантируется, что сумма элементов вектора \(B\) не равна нулю

A

B

\(\chi\)

[1,3,2]

[2,1,2]

1.8

 

 


Вставьте недостающие фрагменты кода
Python
def accuracy_solution(A,B):
    # A-  список/кортеж чисел;
    # B-  список/кортеж весов;
    # x  - взвешенное среднее арифметическое A по B                        
    return  x