Мое решение проблемы разделения совместных затрат
Одна из вещей, которую мне каждый раз не хочется делать - это рассчитывать, кто кому сколько должен денег после совместного похода куда-нибудь.
Если компания состоит из трех человек, и вы идете в кино за 250р, где платишь ты, то ясно, что тебе должны скинуть 500р.
Ситуация усложняется, если вы собираетесь у кого-нибудь дома и вас не 3, а, допустим, 8 и каждый покупает что-то для всех. И для "супер честного" разделения денег между всеми надо найти все чеки и все посчитать. По настоящему ад начинается, если кто-то не ел что-то одно, а кто-то другой не ел второе или ел половину (или в пропорции 62% и 38% и т.д.).
Я периодически занимаюсь этим и - это головная боль.
Чтобы устранить эту проблему из своей жизни я написал программку в моем любимом матлабике, которая это все считает и сейчас я расскажу, как она работает. Без подробностей, но с картинками!
Рассказывать я буду на примере прошедшего нового года. Нас было 7 человек:
Я, Полина, Ксюша, Костя, Наташа, Ярослав, Дима. На самом деле 8, но это по-другому учтено.
- Первое, что необходимо сделать - это составить вот такую excel табличку:
Строки - название товара, который покупался (Я не сильно думал, где что и как называть) и его цена.
Правее (там где единички всякие) - два поля (матрицы) с одинаковым размеров каждое.
Первое поле - содержит информацию, кто за что платил. Например, видно, что за перекресток+пятеру+такси платил Рост т.к. на пересечении стоит 1. Полина платила за грибы и другую пятеруд. И так далее.
Второе поле - содержит информацию, о том, кто что ел. Например в строке Перек+пятера+такси все единицы - это значит, что эти товары делятся на всех, а в строке Кальяен05 только Костя, Полина и Ярослав - делится только на них.
Причем, если во всей строке не ставить ни одной единицы (как будто никто не ел этот товар), то единички автоматически проставятся всем.
Всё! После того, как таблица эта заполнена можно открывать матлаб и жать F5 (запуск).
- Сперва вся эта таблица обрабатывается, автоматически заполняются единички и тд. И первое, что делается - каждый товар делится на всех, кто его ел.
В принципе на этом этапе можно и закончить, но тогда каждому человеку придется отдать деньги сперва за первый товар, потом за второй и т.д. Выглядят потоки денег в этом случае вот так:
- Но можно все дело упросить. Алгоритм, я описывать не буду, но вот к чему сводится граф выше:
Гораздо проще! Один человек посылает деньги только одному человеку и всё!
То же самое в текстовом виде:
Вот и всё!
PS: Когда я уже сделал все это, мне скинули сервис https://www.kittysplit.com/ru/ и он очень крут! Делает то же самое, но с приятным интерфейсом. Единственное, что - присутствует ограничение на количество участников - 10, но чаще всего это не проблема. Так что очень советую пользоваться им!