Надіслати розв'язок

Бали: 20,00 (partial)
Time limit: 1.0s
Memory limit: 64M

Author:
Problem type
Allowed languages
Assembly, Awk, Brain****, C, C++, Java, mono C#, Pascal, Perl, Python, Sed, Text, vb

Нам необхiдно створити базу даних iз максимальною кiлькiстю слiв, якi можуть являти собою спам. На входi задається перелiк iз ~N~ тверджень: слово i 0 або 1 (1 означає, що слово спам, а 0 - не спам). База даних не повинна мiстити суперечливих тверджень щодо одного i того ж слова.

Наприклад, не може мiстити: ~reclame~ 1 i ~reclame~ 0.

У базi дозволено зберiгати однаковi твердження. Наприклад, дозволяється занести у базу даних: ~reclame~ 1 i ~reclame~ 1.

Напишiть програму, яка знайде найбiльшу кiлькiсть тверджень для створення такої бази даних.

Формат вхідних даних

Перший рядок мiстить цiле число ~T~ ~(1 \le T \le 10)~ - кiлькiсть тестiв.

Далi iдуть ~T~ блокiв.

Перший рядок кожного блоку мiстить цiле число ~N~ ~(1 \le N \le 25000)~ - кiлькiсть тверджень у блоцi.

Кожен рядок блоку мiстить слово довжиною вiд 1 до 5 символiв латинського алфавiту i, через пропуск, 0 або 1.

Формат вихідних даних

Для кожного тесту в окремому рядку вивести найбiльшу кiлькiсть тверджень, якi можуть бути занесенi у базу даних

Приклад вхідних даних

3
3
abc 0
abc 1
efg 1
7
fck 1
fck 0
fck 1
body 0
body 0
body 0
ram 0
5
vv 1
vv 0
vv 0
vv 1
vv 1

Приклад вихідних даних

2
6
3

Коментарі

Please read the guidelines before commenting.


Ще немає коментарів.