Создать матрицу M*N (строчки, колонки) Значение места пресечения — объект с уникальным идентификатором ID и количеством Amount: int (3-х значный рандом) Найти сумму по каждой строчке M и среднее по каждому столбику N
Вывести результирующие данные в таблицу с хорошим UX. В основных ячейках таблицы выводится Amount, ранее автоматически сгенерированный, справа сумма по строкам M, снизу — среднее по столбцам N.
При нажатии на ячейку увеличивать значение Amount на 1 и соответственно менять среднее этого столбика и сумму этой строки При наведении на ячейку подсветить X ячеек, Amount которых самый близкий к Amount текущей ячейки. При наведении на ячейку суммы по строчке необходимо заменять значение ячеек на процент их вклада в общую сумму и добавить фон: столбик, который наглядно покажет величину процента. Фактически закрасить часть ячейки.
Дать возможность удалить строку с таблицы, при этом должны поменяться средние значения по каждому столбику Дать возможность добавить строку, фактически M+1. При этом строка заполняется по всем правилам таблицы.