Зірка смерті - 2
Давним-давно у далекій-предалекій галактиці…
Бойова космічна станція "Зірка Смерті" була спроектована ще до початку Клонічних війн. Через багато років вона була передана до рук Імперії для контролю над Зовнішніми Територіями. "Зірка Смерті" мала більше 100 миль у діаметрі, була оснащена гравітонною гарматою, здатною знищувати цілі планети, а також могла нести на борту декілька тисяч винищувачів. "Зірка Смерті" повинна була наводити жах на населення і повністю виключити всяку можливість опору уряду Імперії.
Після того, як перша "Зірка Смерті" була знищена повстанцями, почалось створення нової моделі, ще більше смертоносної. Нова модель, як і перша, має форму кулі і может поступово переміщуватись у N‑мірному просторі. Вона оснащена M жорстко закріпленими криптоновими двигунами. Якщо на i‑й двигун подати X одиниць енергії, то вклад цього двигуна у j‑ту координату вектора тяги складе A_ij·X. У залежності від режиму роботи, криптоновий двигун може переміщувати станцію вперед або назад (у цьому випадку X від'ємне). Результуючий вектор тяги дорівнює сумі вкладів кожного з M двигунів.
Перед початкм руху станції спеціальний навігаційний модуль визначає необхідні координати вектора тяги (b_1, b_2, …, b_N). Ваша програма повинна обчислити кількість енергії, яку необхідно подати на кожен з двигунів так, щоб довжина вектора різниці сумарної тяги та необхідної тяги була мінімальною. У випадку, якщо відповідь неоднозначна, потрібно додатково мінімізувати суму квадратів величин енергії, яка подається на двигуни.
Вхідні дані
У першому рядку через пропуск записані числа N та M (1 ≤ N, M ≤ 100). Далі у M рядках по N чисел у рядку йде матриця A_ij. У останньому рядку записано N чисел b_j — координати необхідного вектора тяги. Усі числа A_ij та b_j цілі і по модулю не перевищують 100.
Вихідні дані
Виведіть M дійсних чисел X_1, …, X_M з точністю п'ять знаків після десяткової крапки. X_i повинно дорівнювати кількості енергії, яку необхідно подати на i‑й двигун. У випадку, якщо відповідей декілька, виведіть довільну.