چند مجموعه و XOR
Problem
شما query های q و یک چند مجموعه A دارید که در ابتدا فقط شامل عدد 0 است. سه نوع پرس و جو وجود دارد:
- +x — عدد x را به چند مجموعه A اضافه کنید.
- -x — یک مورد از عدد x را از چند مجموعه A حذف کنید. تضمین می شود که حداقل یک عدد x در این لحظه در چند مجموعه وجود دارد.
- ؟ x — به شما یک عدد x داده می شود، باید حداکثر OR منحصر به فرد بیتی (همچنین به عنوان XOR شناخته می شود) عدد x و مقداری عدد y از چند مجموعه A را محاسبه کنید.
چند مجموعه — این مجموعه ای است که به چندین عنصر یکسان اجازه می دهد.
ورودی:
خط اول ورودی حاوی عدد q (1 ≤ q ≤ 200000) — تعداد درخواست هایی که واسیلی باید پردازش کند.
هر یک از خطوط q زیر ورودی شامل یکی از سه کاراکتر "+"، "-" است. یا "؟" و عدد x
i (1 ≤ x
i ≤ 10
9). تضمین شده است که حداقل یک پرس و جو در ورودی وجود دارد.
توجه داشته باشید که عدد 0 همیشه در مولتی مجموعه وجود خواهد داشت.
خروجی:
برای هر درخواستی مانند "?" چاپ یک عدد صحیح — حداکثر مقدار XOR بیتی برای عدد x
i و هر عددی از چند مجموعه A.
مثال:
<بدن>
ورودی |
خروجی |
10
+8
+9
+11
+ 6
+ 1
? 3
- 8
? 3
? 8
? 11 |
11
10
14
13 |