import math


def Gauss_approximation(x_list):
    """
    Аппроксимация методом Гаусса для формулы
    y_i = a * exp(-(x_i-b)^2/c^2)

    Parameters
    ----------
    x_list : [float, float, ...]
        Список координат х.

    Returns
    -------
    a : float
        Коэф а.
    b : float
        Коэф b.
    c : float
        Коэф c.
    """
    n = len(x_list)
    x__ = 1/n*(sum(x_list))
    p = 1/200
    summ_ = 0
    for i in range(len(x_list)):
        summ_ += (x_list[i] - x__)**2
    S_0 = math.sqrt((1/(n-1))*summ_)
    c = S_0/(math.sqrt(S_0))
    summ_E = 0
    for i in range(len(x_list)): 
        summ_E += x_list[i]*p
    b = summ_E
    a = 1/(c*(math.sqrt(2*math.pi)))
    return a, b, c