Уникальная группировка объектов - PullRequest
0 голосов
/ 23 мая 2011

Я создаю группы объектов, и я не очень заинтересован в создании реляционной базы данных. По сути, я создаю программу для группировки фильмов для вечеринки, и каждый фильм оценивается по рейтингу 1-5, теперь не может быть двух фильмов на одной вечеринке, но на каждой вечеринке должен быть хотя бы один фильм с 5-звездным рейтингом.

Я выбил первую часть, что никакие два фильма не могут быть на одной стороне, создав уникальные идентификаторы групп с помощью nanotime, однако я не могу понять, как создать вторую часть, группируя группы с рейтингами. Я был бы признателен за решение проблем высокого уровня, но, пожалуйста, без кода, я бы предпочел запрограммировать его сам, спасибо за вашу помощь. : D

(если это помогает, я использую Java)

1 Ответ

0 голосов
/ 23 мая 2011

Простым решением было бы сгруппировать все фильмы в список, отсортированный по убыванию рейтинга (таким образом гарантируя, что все 5-звездочные фильмы находятся в начале). Затем вы выполняете итерацию по этому списку, выделяя фильм для каждой вечеринки (при условии, что у вас больше 5-звездочных фильмов, чем у вечеринок, это будет соответствовать условию, что всем сторонам нужен один 5-звездочный фильм). Вы можете повторить это, пока все фильмы не будут распределены или пока у каждой партии не будет достаточно фильмов, в зависимости от того, что наступит раньше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...