Page not loading? Try clicking here.
Placeholder

#2039

저글링 4마리 1s 256MB

Problems

마린이 정찰 중에 저글링 한 마리를 발견했다. 

저글링을 열심히 쫓아간 마린은 어느 새 자신이 상대 기지 한복판에 있다는 것을 깨달았다. 

죽지 않고 돌아가기 위해 마린은 상대 저그의 경비망을 관찰해 그들의 움직임을 파악했다.

 

- 각각의 상대 유닛들은 X 축과 평행하게, X 축 양의 방향으로 움직이며, 

  X 좌표가 P 가 되면 그곳에 있는 “나이더스 커널”을 통해 X 좌표가 0 인 곳으로 돌아간다.   순간이동에 걸리는 시간은 0 이며, 이 때 Y 좌표는 변하지 않는다. - 각 유닛들은 각각 고유의 사정거리 R 을 가지고 있어, 자신과 마린과의 거리가 R 이하가 되면 공격한다.   이 때, 거리는 택시거리(Manhattan distance)로 한다. - 각 유닛들은 공격력 D 를 가지고 있어, 마린은 한 대를 맞을 때마다 그 만큼의 데미지를 입는다. - 유닛들은 마린이 격자점에 있을 때에만 공격하며, 사거리 안에서 격자점을 여러 번 지나면 격자점마다 한 번씩 공격을 한다.

 

이 문제의 목표는 최소의 데미지를 입고 저그 부대를 탈출하는 것이다. 

마린은 원하는 시점에 한 정수 X(0 <= X < P)좌표를 택해 (X, 0 )에서 + Y 방향으로 전력질주하며, 방향 전환은 없다. 

Y 좌표가 Q 가 되면 마린은 탈출하게 된다.

 

※ 유닛들의 이동 속도는 마린과 같다. ※ Y 좌표가 0 일 때는 공격을 받지 않지만, Q 일 때에는 공격을 받는다. ※ 저그 유닛들은 X 좌표가 P 가 되면 바로 이동하기 때문에, 그 위치에서는 공격하지 않는다. 

다만, 순간이동 후 X 좌표 0 에서는 즉시 공격한다. 

 


Input

첫 줄에 커널의 위치 P, 탈출 Y 좌표 Q, 상대 유닛의 수 N 이 주어진다. (1 <= P,Q,N <= 2000, N <= Q) 그 다음 2 ~ N+1 줄에 유닛의 위치 X[i], Y[i], 사정거리 R[i], 공격력 D[i] 가 주어진다. (0 <= X[i] < P, 1 <= Y[i] <= Q, 0 <= R[i] < P,Q, 1 <= D[i] <= 100) Subtest 1(40%). P,Q,N <= 50 Subtest 2(20%). P,Q,N <= 200 Subtest 3(40%). P,Q,N <= 2000

Output

마린이 저그 부대를 탈출하면서 입는 최소의 데미지를 출력한다.

Example

5 5 3

0 4 2 2
4 3 3 1
0 1 4 2
8

You must sign in to write code.