PivotOJ

아이템 획득

시간 제한: 3000ms메모리 제한: 1024MB출처: KOI 2023 1차BOJ 28216

문제

여러분은 22차원 지도에서 자동차를 조종하며 아이템을 모으는 게임을 제작하고 있다.

지도에는 아이템을 얻을 수 있는 NN개의 상자가 있다. i번째 상자의 위치는 (xi,yi)(x_i , y_i)이고, 자동차가 이 위치를 지날 때마다 wiw_i개의 아이템을 얻을 수 있다.

자동차는 xx축 또는 yy축에 평행한 방향으로 이동한다. 자동차의 이동은 두 정수 ddvv로 표현할 수 있다. d=0d = 0이면 xx좌표가 증가하는 방향으로 vv만큼, d=1d = 1이면 yy좌표가 증가하는 방향으로 vv만큼, d=2d = 2이면 xx좌표가 감소하는 방향으로 vv만큼, d=3d = 3이면 yy좌표가 감소하는 방향으로 vv만큼 이동한다.

이때 이동이 시작되는 위치에 있는 상자의 아이템은 얻을 수 없다. 즉, (sx,sy)(s_x, s_y)에서 (ex,ey)(e_x, e_y)로 이동하는 경우, (sx,sy)(s_x, s_y)에 있는 상자의 아이템은 얻을 수 없고, (ex,ey)(e_x, e_y)에 있는 상자의 아이템은 얻을 수 있다.

자동차는 (1,1)(1, 1)에서 시작해 총 QQ번 이동한다. 자동차의 이동 방향과 거리가 주어지면, QQ번의 이동에서 얻게 되는 아이템의 총 개수를 구하시오.

입력

첫 번째 줄에 상자의 개수 NN과 이동 횟수 QQ가 공백으로 구분되어 주어진다.

이후 NN개의 줄이 주어진다. 이 중 i번째 줄에는 세 정수 xix_i, yiy_i, wiw_i가 공백으로 구분되어 주어진다. 이는 ii번째 상자가 (xi,yi)(x_i , y_i)에 있으며, 이 위치를 지날 때마다 wiw_i개의 아이템을 얻게 됨을 의미한다.

이후 QQ개의 줄이 주어진다. 이 중 jj번째 줄에는 두 정수 djd_j, vjv_j가 공백으로 구분되어 주어진다. 이는 자동차가 djd_j방향으로 vjv_j만큼 이동함을 의미한다.

출력

첫 번째 줄에 QQ번의 이동에서 얻게 되는 아이템의 총 개수를 출력한다.

예제

예제 1

입력
4 6
5 5 3
5 8 5
3 5 2
1 5 1
0 4
1 9
3 5
2 3
2 1
0 5
출력
24

예제 2

입력
3 3
1 3 1
2 2 1
3 1 1
1 3
0 2
3 3
출력
2
코드를 제출하려면 로그인하세요.