A. Subarrays Beauty

Codeforces
IDCF10153A
Time1000ms
Memory256MB
Difficulty
English · Original
Formal · Original
You are given an array a consisting of n integers. A subarray (l, r) from array a is defined as non-empty sequence of consecutive elements al, al + 1, ..., ar. The beauty of a subarray (l, r) is calculated as the _bitwise AND_ for all elements in the subarray: Your task is to calculate the summation of the beauty of all subarrays (l, r) (1 ≤ l ≤ r ≤ n): The first line contains an integer T, where T is the number of test cases. The first line of each test case contains an integer n (1 ≤ n ≤ 105), where n is the size of the array a. The second line of each test case contains n integers a1, a2, ..., an (1 ≤ ai ≤ 106), giving the array a. For each test case, print a single line containing the summation of the beauty of all subarrays in the given array. As input/output can reach huge size it is recommended to use fast input/output methods: for example, prefer to use _scanf/printf_ instead of _cin/cout_ in C++, prefer to use _BufferedReader/PrintWriter_ instead of _Scanner/System.out_ in Java. A _bitwise AND_ takes two equal-length binary representations and performs the logical _AND_ operation on each pair of the corresponding bits, by multiplying them. Thus, if both bits in the compared position are 1, the bit in the resulting binary representation is 1 (1  ×  1 = 1); otherwise, the result is 0 (1  ×  0 = 0 and 0  ×  0 = 0). This operation exists in all modern programming languages, for example in language C++ and Java it is marked as *&*. In the first test case, the answer is calculated as summation of 6 subarrays as follow: ## Input The first line contains an integer T, where T is the number of test cases.The first line of each test case contains an integer n (1 ≤ n ≤ 105), where n is the size of the array a.The second line of each test case contains n integers a1, a2, ..., an (1 ≤ ai ≤ 106), giving the array a. ## Output For each test case, print a single line containing the summation of the beauty of all subarrays in the given array. [samples] ## Note As input/output can reach huge size it is recommended to use fast input/output methods: for example, prefer to use _scanf/printf_ instead of _cin/cout_ in C++, prefer to use _BufferedReader/PrintWriter_ instead of _Scanner/System.out_ in Java.A _bitwise AND_ takes two equal-length binary representations and performs the logical _AND_ operation on each pair of the corresponding bits, by multiplying them. Thus, if both bits in the compared position are 1, the bit in the resulting binary representation is 1 (1  ×  1 = 1); otherwise, the result is 0 (1  ×  0 = 0 and 0  ×  0 = 0). This operation exists in all modern programming languages, for example in language C++ and Java it is marked as *&*.In the first test case, the answer is calculated as summation of 6 subarrays as follow: Beauty(1, 1) + Beauty(l, 2) + Beauty(1, 3) + Beauty(2, 2) + Beauty(2, 3) + Beauty(3, 3) (7) + (7 & 11) + (7 & 11 & 9) + (11) + (11 & 9) + (9) = 40
**Definitions** Let $ T \in \mathbb{Z} $ be the number of test cases. For each test case $ k \in \{1, \dots, T\} $: - Let $ n_k \in \mathbb{Z} $ denote the length of the array. - Let $ A_k = (a_{k,1}, a_{k,2}, \dots, a_{k,n_k}) $ be the array of integers, where $ a_{k,i} \in \mathbb{Z}^+ $. A subarray $ (l, r) $ is defined for $ 1 \leq l \leq r \leq n_k $, and its beauty is $ \bigwedge_{i=l}^{r} a_{k,i} $, the bitwise AND of all elements in the subarray. **Constraints** 1. $ 1 \leq T \leq 10^4 $ (implied by constraints on $ n $ and typical CF bounds) 2. For each test case $ k $: - $ 1 \leq n_k \leq 10^5 $ - $ 1 \leq a_{k,i} \leq 10^6 $ for all $ i \in \{1, \dots, n_k\} $ **Objective** For each test case $ k $, compute: $$ S_k = \sum_{l=1}^{n_k} \sum_{r=l}^{n_k} \left( \bigwedge_{i=l}^{r} a_{k,i} \right) $$ Output $ S_k $ for each test case.
API Response (JSON)
{
  "problem": {
    "name": "A. Subarrays Beauty",
    "description": {
      "content": "You are given an array a consisting of n integers. A subarray (l, r) from array a is defined as non-empty sequence of consecutive elements al, al + 1, ..., ar. The beauty of a subarray (l, r) is calc",
      "description_type": "Markdown"
    },
    "platform": "Codeforces",
    "limit": {
      "time_limit": 1000,
      "memory_limit": 262144
    },
    "difficulty": "None",
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "CF10153A"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "You are given an array a consisting of n integers. A subarray (l, r) from array a is defined as non-empty sequence of consecutive elements al, al + 1, ..., ar.\n\nThe beauty of a subarray (l, r) is calc...",
      "is_translate": false,
      "language": "English"
    },
    {
      "statement_type": "Markdown",
      "content": "**Definitions**  \nLet $ T \\in \\mathbb{Z} $ be the number of test cases.  \nFor each test case $ k \\in \\{1, \\dots, T\\} $:  \n- Let $ n_k \\in \\mathbb{Z} $ denote the length of the array.  \n- Let $ A_k = (...",
      "is_translate": false,
      "language": "Formal"
    }
  ]
}
Full JSON Raw Segments