CF1739E.Cleaning Robot

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Consider a hallway, which can be represented as the matrix with 22 rows and nn columns. Let's denote the cell on the intersection of the ii -th row and the jj -th column as (i,j)(i, j) . The distance between the cells (i1,j1)(i_1, j_1) and (i2,j2)(i_2, j_2) is i1i2+j1j2|i_1 - i_2| + |j_1 - j_2| .

There is a cleaning robot in the cell (1,1)(1, 1) . Some cells of the hallway are clean, other cells are dirty (the cell with the robot is clean). You want to clean the hallway, so you are going to launch the robot to do this.

After the robot is launched, it works as follows. While at least one cell is dirty, the robot chooses the closest (to its current cell) cell among those which are dirty, moves there and cleans it (so the cell is no longer dirty). After cleaning a cell, the robot again finds the closest dirty cell to its current cell, and so on. This process repeats until the whole hallway is clean.

However, there is a critical bug in the robot's program. If at some moment, there are multiple closest (to the robot's current position) dirty cells, the robot malfunctions.

You want to clean the hallway in such a way that the robot doesn't malfunction. Before launching the robot, you can clean some (possibly zero) of the dirty cells yourself. However, you don't want to do too much dirty work yourself while you have this nice, smart (yet buggy) robot to do this. Note that you cannot make a clean cell dirty.

Calculate the maximum possible number of cells you can leave dirty before launching the robot, so that it doesn't malfunction.

输入格式

The first line contains one integer nn ( 2n21052 \le n \le 2 \cdot 10^5 ) — the number of columns in the hallway.

Then two lines follow, denoting the 11 -st and the 22 -nd row of the hallway. These lines contain nn characters each, where 0 denotes a clean cell and 1 denotes a dirty cell. The starting cell of the robot (1,1)(1, 1) is clean.

输出格式

Print one integer — the maximum possible number of cells you can leave dirty before launching the robot, so that it doesn't malfunction.

输入输出样例

  • 输入#1

    2
    01
    11

    输出#1

    2
  • 输入#2

    2
    01
    01

    输出#2

    2
  • 输入#3

    4
    0101
    1011

    输出#3

    4
  • 输入#4

    4
    0000
    0000

    输出#4

    0
  • 输入#5

    5
    00011
    10101

    输出#5

    4
  • 输入#6

    6
    011111
    111111

    输出#6

    8
  • 输入#7

    10
    0101001010
    1010100110

    输出#7

    6

说明/提示

In the first example, you can clean the cell (1,2)(1, 2) , so the path of the robot is (1,1)(2,1)(2,2)(1, 1) \rightarrow (2, 1) \rightarrow (2, 2) .

In the second example, you can leave the hallway as it is, so the path of the robot is (1,1)(1,2)(2,2)(1, 1) \rightarrow (1, 2) \rightarrow (2, 2) .

In the third example, you can clean the cell (1,2)(1, 2) , so the path of the robot is (1,1)(2,1)(2,3)(2,4)(1,4)(1, 1) \rightarrow (2, 1) \rightarrow (2, 3) \rightarrow (2, 4) \rightarrow (1, 4) .

In the fourth example, the hallway is already clean. Maybe you have launched the robot earlier?

首页