Anti-xor sorğuları#7247

Anti-xor sorğuları

2,5 saniyə
64 meqabayt
Çox asan

Son zamanlar məşqçimiz Etibar yeni bir bitwise əməliyyatı icad edib. Bu əməliyyat xor əməliyyatının tərsinə bənzəyir və o, buna anti-xor adını verib. İndi o, sizə bu ixtirası ilə bağlı sorğular əsasında həll etməli olduğunuz bir problem təqdim edir. Anti-xor işarəsi # kimi göstərilir.

Sizə N ədəd verilir. Bu tam ədədlər üzərində aşağıdakı əməliyyatları yerinə yetirin:

1) X ilə L-dən R-ə qədər olan tam ədədləri anti-xor edin. Bu sorğu “1 L R X” kimi təmsil olunur.

2) L-dən R-ə qədər olan bütün ədədlərin cəmini hesablayın. Bu sorğu “2 L R” kimi təmsil olunur.

Bütün ədədlərin 20 bitlik tam ədədlər olduğunu qəbul edin. Beləliklə, anti-xor əməliyyatını son 20 bit üzərində yerinə yetirin.

Giriş

Sizə bir tam ədəd N (1 ≤ N ≤ 100000) verilir. İkinci sətirdə sizə N tam ədəd verilir (0 ≤ A_i ≤ 10^6). Növbəti sətir sorğuların sayı Q (1 ≤ Q ≤ 100000) ilə başlayır. Növbəti Q sətirdən hər biri yuxarıdakı formalardan birinə aid bir sorğu ehtiva edir.

Çıxış

Hər bir “2 L R” tipli sorğu üçün L-dən R-ə qədər olan bütün tam ədədlərin cəmini ayrı bir sətirdə çap edin.

Nümunələr

Nümunə 1

Loading
Loading