n = gets.to_i a = gets.split.map(&:to_f) val1 = n * (0...n).sum { _1 * a[_1] } - (0...n).sum { _1 } * (0...n).sum { a[_1] } val2 = (0...n).sum { _1**2 } * (0...n).sum { a[_1] } - (0...n).sum { _1 * a[_1] } * (0...n).sum { _1 } val3 = n * (0...n).sum { _1**2 } - (0...n).sum { _1 }**2 b1 = val2 / val3 d = val1 / val3 puts [b1, d].join(' ') puts (0...n).map { [b1 + d * _1, _1] }.sum { (_1 - a[_2])**2 }