NLO

시간 제한3초메모리 제한512 MB

요약
매일 원형 UFO가 덮는 칸의 풀을 0으로 만들고 나머지 풀은 하루에 1씩 자란다. K일 뒤 밭 전체의 풀의 양을 구한다.
난이도

보통10점 중 7점

유형
기하, 누적 합, 수학, 구현
정답자
아직 제출이 없습니다

문제

Žabnik 마을 주민들은 오랫동안 곡물밭에 원형 무늬를 만드는 미확인비행물체(UFO) 때문에 골머리를 앓아 왔다. 특히 여름 건초 베기철에 피해가 두드러진다.

행이 N개, 열이 M개인 직사각형 곡물밭을 생각하자. 왼쪽 위 칸의 좌표는 (1, 1)이고 오른쪽 아래 칸의 좌표는 (N, M)이다. 각 칸에는 일정량의 풀이 자란다. 처음에는 모든 칸의 풀의 양이 1이다. K일 동안 원형 UFO가 밭에 내려앉아 원을 그린다. i번째 날 아침, 좌표 (Xi, Yi)인 칸을 중심으로 하는 반지름 Ri의 UFO가 내려앉아 덮인 칸에 자란 풀을 모두 "벤다". 즉, (Xi - x)2 + (Yi - y)2 ≤ Ri2이면 좌표 (x, y)인 칸의 풀의 양이 0이 된다. 날이 새로 시작될 때마다 풀이 자라서 모든 칸의 풀의 양이 1씩 늘어난다.

K번째 날 저녁, 주민들은 소 먹이로 저장할 곡물밭의 풀을 모두 벤다. 저장하게 될 풀의 총량은 얼마인가?

입력

첫째 줄에는 곡물밭의 크기인 양의 정수 N과 M이 주어진다. (1 ≤ N, M ≤ 100 000)

둘째 줄에는 베기 전에 미확인비행물체가 곡물밭에 내려앉는 날의 수인 양의 정수 K가 주어진다. (1 ≤ K ≤ 100)

다음 K개 줄의 i번째 줄에는 세 개의 양의 정수 Xi (1 < Xi < N), Yi (1 < Yi < M), Ri (1 ≤ Ri ≤ min(Xi - 1, Yi - 1, N - Xi, M - Yi))가 주어지며, 이는 i번째 UFO가 내려앉는 중심 칸과 i번째 UFO의 반지름을 나타낸다.

출력

베기 후 주민들이 저장하게 될 풀의 총량을 출력한다.

예제3

  1. 예제 1

    입력
    6 6
    3
    4 4 2
    3 3 2
    2 4 1
    
    예상 출력
    68
    
  2. 예제 2

    입력
    100 100
    2
    50 50 49
    30 30 29
    
    예상 출력
    9534
    
  3. 예제 3

    입력
    33333 44444
    1
    11111 22222 9999
    
    예상 출력
    1167355751