Завдання № 10
відбірково-тренувальних зборів
команди міста Києва

1. Куб
Відстанню на поверхні многоґранника між двома точками називають найменшу довжина ламаної, що з'єднує дві дані точки, і всі ланки якої (ламаної) належать поверхні багато­ґранника. Нехай у декартовій системі координат координати вершин куба дорівнюють 0 або деякому натуральному числу a, яке не перевищує 15.

Завдання
Створіть програму cube.*, яка вираховує квадрат відстані на поверхні куба між точками з цілими координатами.

Вхідні дані
Перший рядок файлу cube.in містить у вказаному порядку 2 натуральних числа — a і n.

Для j в межах від 1 до n включно (j + 1)-ий рядок цього файлу містить 6 цілих невід'ємних чисел — відповідно координати (порядок усталений: спочатку абсциса x, потім — ордината y, і лише потім — апліката z) точки, розташованый на ґрані куба і в координатній площині xy, і довільної точки на поверхні куба.

Вихідні дані
Файл cube.res утворити з cube.out дописуванням у кожен рядок, починаючи з другого, шуканого квадрату довжини ламаної, що з'єднує точки, чиї координати записано у цьому самому рядку.

Приклад

cube.incube.out
10 2
1 2 0 2 1 0
9 5 0 10 7 1
10 2
1 2 0 2 1 0 2
9 5 0 10 7 1 8

2. Числа

Завдання
Створiть програму numbers.*, яка визначить кiлькость n-цифрових чисел, для кожного з яких сума всiх цифр дорiвнює m.

Вхідні дані
Єдиний рядок файлу numbers.in містить два натуральнi числа n i m, де n < 124, m < 1248.

Вихідні дані
Єдиний рядок файлу numbers.out містить шукану кiлькость n-цифрових чисел, для кожного з яких сума всiх цифр дорiвнює m.

Приклад

numbers.innumbers.out
5 315