2D Conveyor Belt

시간 제한2초메모리 제한2048 MB

요약
N×N 격자에 Q개의 방향 칸이 차례로 고정될 때, 남은 칸을 모두 채웠을 때 영원히 빠져나가지 못하게 만들 수 있는 칸 수의 최솟값을 매번 구한다.
난이도

어려움10점 중 9점

유형
그래프, DFS, 유니온 파인드, 동적 계획법
정답자
아직 제출이 없습니다

문제

Farmer John's milk factory can be described by an NN by NN (1≤N≤10001 \le N \le 1000) grid of cells that contain conveyor belts. Position (a,ba,b) describes the cell that is in the aa-th row from the top and bb-th column from the left. There are 55 types of cells:

  1. "L" — the cell is a leftward facing conveyor belt which moves all items on it 1 cell left every time unit.
  2. "R" — the cell is a rightward facing conveyor belt which moves all items on it 1 cell right every time unit.
  3. "U" — the cell is an upward facing conveyor belt which moves all items on it 1 cell up every time unit.
  4. "D" — the cell is a downward facing conveyor belt which moves all items on it 1 cell down every time unit.
  5. "?" — Farmer John has not built a conveyor belt at that cell yet.

Note that conveyor belts can also move items outside the grid. A cell cc is unusable if an item placed at cell cc will never exit the conveyor belt grid (i.e. it will move around in the grid forever).

Initially, Farmer John has not started building the factory so all cells start out as "?". For the next QQ (1≤Q≤2⋅1051 \le Q \le 2 \cdot 10^5) days starting from day 11 and ending at day QQ, Farmer John will choose a cell that does not have a conveyor belt and build a conveyor belt at the cell.

Specifically, during the ii-th day, Farmer John will build a conveyor belt of type t_it\_i (t_i∈L,R,U,Dt\_i \in {\text{{L,R,U,D}}}) at position (r_i,c_ir\_i,c\_i) (1≤r_i,c_i≤N1 \le r\_i,c\_i \le N). It is guaranteed that there is no conveyor belt at position (r_i,c_ir\_i,c\_i).

After each day, help Farmer John find the minimum number of unusable cells he can achieve by optimally building conveyor belts on all remaining cells without a conveyor belt.

입력

The first line contains NN and QQ.

The ii-th of the next QQ lines contains r_ir\_i, c_ic\_i, and t_it\_i in that order.

출력

QQ lines, the ii-th of which describing the minimum number of unusable cells if Farmer John fills optimally builds conveyor belts on all remaining cells that do not currently have a conveyor belt.

예제3

  1. 예제 1

    입력
    3 5
    1 1 R
    3 3 L
    3 2 D
    1 2 L
    2 1 U
    
    예상 출력
    0
    0
    0
    2
    3
    
  2. 예제 2

    입력
    3 8
    1 1 R
    1 2 L
    1 3 D
    2 3 U
    3 3 L
    3 2 R
    3 1 U
    2 1 D
    
    예상 출력
    0
    2
    2
    4
    4
    6
    6
    9
    
  3. 예제 3

    입력
    4 13
    2 2 R
    2 3 R
    2 4 D
    3 4 D
    4 4 L
    4 3 L
    4 2 U
    3 1 D
    4 1 R
    2 1 L
    1 1 D
    1 4 L
    1 3 D
    
    예상 출력
    0
    0
    0
    0
    0
    0
    0
    0
    11
    11
    11
    11
    13