## Staircases solution codeforces

You are given a matrix, consisting of πn rows and πm columns.

Each cell of the matrix can be either free or locked.

Let’s call a path in the matrix a staircase if it:

- starts and ends in the free cell;
- visits only free cells;
- has one of the two following structures:
- the second cell is 11 to the right from the first one, the third cell is 11 to the bottom from the second one, the fourth cell is 11 to the right from the third one, and so on;
- the second cell is 11 to the bottom from the first one, the third cell is 11 to the right from the second one, the fourth cell is 11 to the bottom from the third one, and so on.

In particular, a path, consisting of a single cell, is considered to be a staircase.

Here are some examples of staircases:

You have to process πq queries, each of them flips the state of a single cell. So, if a cell is currently free, it makes it locked, and if a cell is currently locked, it makes it free.

Print the number of different staircases after each query. Two staircases are considered different if there exists such a cell that appears in one path and doesn’t appear in the other path.

The first line contains three integers πn, πm and πq (1β€π,πβ€10001β€n,mβ€1000; 1β€πβ€1041β€qβ€104)Β β the sizes of the matrix and the number of queries.

Each of the next πq lines contains two integers π₯x and π¦y (1β€π₯β€π1β€xβ€n; 1β€π¦β€π1β€yβ€m)Β β the description of each query.

Print πq integersΒ β the πi-th value should be equal to the number of different staircases after πi queries. Two staircases are considered different if there exists such a cell that appears in one path and doesn’t appear in the other path.

2 2 8 1 1 1 1 1 1 2 2 1 1 1 2 2 1 1 1

5 10 5 2 5 3 1 0

3 4 10 1 4 1 2 2 3 1 2 2 3 3 2 1 3 3 4 1 3 3 1

49 35 24 29 49 39 31 23 29 27

1000 1000 2 239 634 239 634

1332632508 1333333000