Range XOR

AtCoder
IDarc133_d
Time2000ms
Memory256MB
Difficulty
Given are integers $L$, $R$, and $V$. Find the number of pairs of integers $(l,r)$ that satisfy both of the conditions below, modulo $998244353$. * $L \leq l \leq r \leq R$ * $l \oplus (l+1) \oplus \cdots \oplus r=V$ Here, $\oplus$ denotes the bitwise $\mathrm{XOR}$ operation. What is bitwise $\mathrm{XOR}$?The bitwise $\mathrm{XOR}$ of non-negative integers $A$ and $B$, $A \oplus B$, is defined as follows: * When $A \oplus B$ is written in base two, the digit in the $2^k$'s place ($k \geq 0$) is $1$ if exactly one of $A$ and $B$ is $1$, and $0$ otherwise. For example, we have $3 \oplus 5 = 6$ (in base two: $011 \oplus 101 = 110$). Generally, the bitwise $\mathrm{XOR}$ of $k$ integers $p_1, p_2, p_3, \dots, p_k$ is defined as $(\dots ((p_1 \oplus p_2) \oplus p_3) \oplus \dots \oplus p_k)$. We can prove that this value does not depend on the order of $p_1, p_2, p_3, \dots p_k$. ## Constraints * $1 \leq L \leq R \leq 10^{18}$ * $0 \leq V \leq 10^{18}$ * All values in input are integers. ## Input Input is given from Standard Input in the following format: $L$ $R$ $V$ [samples]
Samples
Input #1
1 3 3
Output #1
2

The two pairs satisfying the conditions are $(l,r)=(1,2)$ and $(l,r)=(3,3)$.
Input #2
10 20 0
Output #2
6
Input #3
1 1 1
Output #3
1
Input #4
12345 56789 34567
Output #4
16950
API Response (JSON)
{
  "problem": {
    "name": "Range XOR",
    "description": {
      "content": "Given are integers $L$, $R$, and $V$. Find the number of pairs of integers $(l,r)$ that satisfy both of the conditions below, modulo $998244353$. *   $L \\leq l \\leq r \\leq R$ *   $l \\oplus (l+1) \\opl",
      "description_type": "Markdown"
    },
    "platform": "AtCoder",
    "limit": {
      "time_limit": 2000,
      "memory_limit": 262144
    },
    "difficulty": "None",
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "arc133_d"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "Given are integers $L$, $R$, and $V$. Find the number of pairs of integers $(l,r)$ that satisfy both of the conditions below, modulo $998244353$.\n\n*   $L \\leq l \\leq r \\leq R$\n*   $l \\oplus (l+1) \\opl...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments