Підрахунок корів#11215

Підрахунок корів

1 секунда
128 мегабайтів
Дуже складна

Корови фермера Джона розселилися на його найбільшому пасовищі, яке можна уявити як велику двовимірну решітку квадратних клітин (уявіть собі гігантську шахову дошку).

Розташування корів на пасовищі досить цікаве. Для кожної клітини , де x \ge 0 і y \ge 0, у клітині є корова, якщо для всіх цілих k \ge 0 залишки від ділення \left\lfloor \frac{x}{3^k} \right\rfloor і \left\lfloor \frac{y}{3^k} \right\rfloor на мають однакову парність. Іншими словами, обидва залишки непарні (дорівнюють ), або обидва парні (дорівнюють або ). Наприклад, клітини серед 0 \le x, y < 9, у яких є корови, позначені одиницями на рисунку нижче:

        x
    012345678

  0 101000101
  1 010000010
  2 101000101
  3 000101000
y 4 000010000
  5 000101000
  6 101000101
  7 010000010
  8 101000101

Фермер Джон цікавиться, скільки корів знаходиться у певних діагональних областях його пасовища. Він ставить запитів, кожен з яких складається з трьох цілих чисел x_i, y_i, d_i. Для кожного запиту фермер Джон хоче дізнатися, скільки корів знаходиться у клітинах на діагоналі від (x_i, y_i) до (x_i + d_i, y_i + d_i) включно.

Вхідні дані

Перший рядок містить ціле число (1 \le q \le 10^4) — кількість запитів.

Кожен з наступних рядків містить три цілих числа d_i, x_i, y_i (0 \le x_i, y_i, d_i \le 10^{18}) — опис запиту.

Вихідні дані

Виведіть рядків, по одному числу у кожному — відповідь на відповідний запит.

Приклади

Приклад 1

Loading
Loading