Codeforces Round 653 (Div. 3) |
---|
Закончено |
Простая и сложная версии на самом деле являются разными задачами, поэтому прочитайте условия обеих задач полностью и внимательно.
Летние каникулы начались, поэтому Алиса и Боб хотят играть и веселиться, но... Их мама не согласна с этим. Она говорит, что они должны прочитать какое-то количество книг перед всеми развлечениями. Алиса и Боб прочитают каждую книгу вместе, чтобы быстрее закончить это задание.
В семейной библиотеке есть $$$n$$$ книг. $$$i$$$-я книга характеризуется тремя целыми числами: $$$t_i$$$ — количество времени, которое Алиса и Боб должны потратить, чтобы прочитать ее, $$$a_i$$$ (равное $$$1$$$, если Алисе нравится $$$i$$$-я книга, и $$$0$$$, если не нравится), и $$$b_i$$$ (равное $$$1$$$, если Бобу нравится $$$i$$$-я книга, и $$$0$$$, если не нравится).
Поэтому им нужно выбрать какие-то книги из имеющихся $$$n$$$ книг таким образом, что:
Множество, которое они выбирают, одинаковое и для Алисы и для Боба (они читают одни и те же книги), и они читают все книги вместе, таким образом, суммарное время чтения равно сумме $$$t_i$$$ по всем книгам, которые находятся в выбранном множестве.
Ваша задача — помочь им и найти любое подходящее множество книг или определить, что такое множество найти невозможно.
Первая строка теста содержит два целых числа $$$n$$$ и $$$k$$$ ($$$1 \le k \le n \le 2 \cdot 10^5$$$).
Следующие $$$n$$$ строк содержат описания книг, по одному описанию в строке: $$$i$$$-я строка содержит три целых числа $$$t_i$$$, $$$a_i$$$ и $$$b_i$$$ ($$$1 \le t_i \le 10^4$$$, $$$0 \le a_i, b_i \le 1$$$), где:
Если подходящего решения не существует, выведите число -1. Иначе выведите целое число $$$T$$$ — минимальное суммарное время, необходимое для прочтения подходящего множества книг.
8 4
7 1 1
2 1 1
4 0 1
8 1 1
1 0 1
1 1 1
1 0 1
3 0 0
18
5 2
6 0 0
9 0 0
1 0 1
2 1 1
5 1 0
8
5 3
3 0 0
2 1 0
3 1 0
5 0 1
3 0 1
-1
Название |
---|