CF BUDDY
← Problems·

1566C · MAX-MEX Cut

1000 · bitmasks, constructive algorithms, dp

Problem: A binary string is a string that consists of characters 00 and 11. A bi-table is a table that has exactly two rows of equal length, each being a binary string.

Let MEX\operatorname{MEX} of a bi-table be the smallest digit among 00, 11, or 22 that does not occur in the bi-table. For example, MEX\operatorname{MEX} for [00111010]\begin{bmatrix} 0011\\ 1010 \end{bmatrix} is 22, because 00 and 11 occur in the bi-table at least once. MEX\operatorname{MEX} for [111111]\begin{bmatrix} 111\\ 111 \end{bmatrix} is 00, because 00 and 22 do not occur in the bi-table, and 0<20 < 2.

You are given a bi-table with nn columns. You should cut it into any number of bi-tables (each consisting of consecutive columns) so that each column is in exactly one bi-table. It is possible to cut the bi-table into a single bi-table — the whole bi-table.

What is the maximal sum of MEX\operatorname{MEX} of all resulting bi-tables can be?

Input Format: The input consists of multiple test cases. The first line contains a single integer tt (1t1041 \le t \le 10^4) — the number of test cases. Description of the test cases follows.

The first line of the description of each test case contains a single integer nn (1n1051 \le n \le 10^5) — the number of columns in the bi-table.

Each of the next two lines contains a binary string of length nn — the rows of the bi-table.

It's guaranteed that the sum of nn over all test cases does not exceed 10510^5.

Output Format: For each test case print a single integer — the maximal sum of MEX\operatorname{MEX} of all bi-tables that it is possible to get by cutting the given bi-table optimally.

Note: In the first test case you can cut the bi-table as follows:

  • [01]\begin{bmatrix} 0\\ 1 \end{bmatrix}, its MEX\operatorname{MEX} is 22.
  • [1010]\begin{bmatrix} 10\\ 10 \end{bmatrix}, its MEX\operatorname{MEX} is 22.
  • [11]\begin{bmatrix} 1\\ 1 \end{bmatrix}, its MEX\operatorname{MEX} is 00.
  • [01]\begin{bmatrix} 0\\ 1 \end{bmatrix}, its MEX\operatorname{MEX} is 22.
  • [00]\begin{bmatrix} 0\\ 0 \end{bmatrix}, its MEX\operatorname{MEX} is 11.
  • [00]\begin{bmatrix} 0\\ 0 \end{bmatrix}, its MEX\operatorname{MEX} is 11.

The sum of MEX\operatorname{MEX} is 88.

Sample Cases

Case 1

Input

4
7
0101000
1101100
5
01100
10101
2
01
01
6
000000
111111

Output

8
8
2
12

Similar problems

00:00:00
Loading editor…
Welcome! I'm your coding tutor for this problem. Use the chips below to reveal stored hints or get AI feedback on your code. I'll guide you step by step — never giving away the solution.

Sign in to unlock AI tutor feedback