eolymp
bolt
Try our new interface for solving problems
Məsələlər

XOR Сумма

XOR Сумма

Zaman məhdudiyyəti 1 saniyə
Yaddaşı istafadə məhdudiyyəti 128 MiB

Вам дан список из q (1q100000) команд.

По команде "insert n" следует добавить n в набор чисел (повторы чисел допускаются).

По команде "print" следует вывести XOR сумму наибольших k (1kq) элементов списка (если список содержит меньше k элементов, то вывести XOR сумму всех элементов списка).

XOR сумма набора чисел представляет собой выполнение операции XOR над ими всеми. XOR применяется к двум целым числам, используя оператор ^ во многих языках программирования или xor в Хаскеле (Паскале)).

Функция XOR имеет несколько важных свойств. Например, если n ^ m = x, то n = x ^ m и m = x ^ n.

Giriş verilənləri

Первая строка содержит количество тестов t (1t30). Каждый тест начинается строкой, содержащей два целых числа q и k (1q, k100000). Каждая из следующих q строк содержит одну команду.

Команды бывают двух видов:

insert n

или

print

n - неотрицательное число, меньшее 2^31.

Çıxış verilənləri

Для каждой команды print вывести XOR сумму (не больше) k наибольших элементов в текущем списке. Помните, что список очищается после обработки каждого теста.

Nümunə

Giriş verilənləri #1
1
5 2
insert 1
insert 2
print
insert 3
print
Çıxış verilənləri #1
3
1
Müəllif Hichem Zakaria Aichour
Mənbə ACM ICPC CCPC 2013