У задачи мало ограничений. Например, какой максимальный размер пула? Есть ли там повторения? Должны ли быть использованы все числа из пула? Должны ли "части" быть равными по количеству элементов? Нужно ли учитывать (иными словами, может ли быть), что отдельный элемент пула может быть больше суммы?
mayton2019, ну это уже хотелки, которых не было указано. Передать файл = передать массив байтов, которые этот файл составляют. Так-то можно и докачку, и проверку хэшей по кускам организовать и чего душе угодно. А вообще да, первые несколько байт точно стоит выделить под имя файла и его размер
Добавлять и дату начала подписки и дату окончания. Потому что сегодня за 100р продаётся подписка на 30 дней, а завтра на 60 дней. Хранить константой в этом случае не выйдет. А дата начала хотя бы для статистики