[BOJ 28216] 아이템 획득
View as PDF여러분은 $2$차원 지도에서 자동차를 조종하며 아이템을 모으는 게임을 제작하고 있다.</p>
지도에는 아이템을 얻을 수 있는 $N$개의 상자가 있다. i번째 상자의 위치는 $(x_i , y_i)$이고, 자동차가 이 위치를 지날 때마다 $w_i$개의 아이템을 얻을 수 있다.
자동차는 $x$축 또는 $y$축에 평행한 방향으로 이동한다. 자동차의 이동은 두 정수 $d$와 $v$로 표현할 수 있다. $d = 0$이면 $x$좌표가 증가하는 방향으로 $v$만큼, $d = 1$이면 $y$좌표가 증가하는 방향으로 $v$만큼, $d = 2$이면 $x$좌표가 감소하는 방향으로 $v$만큼, $d = 3$이면 $y$좌표가 감소하는 방향으로 $v$만큼 이동한다.
이때 이동이 시작되는 위치에 있는 상자의 아이템은 얻을 수 없다. 즉, $(s_x, s_y)$에서 $(e_x, e_y)$로 이동하는 경우, $(s_x, s_y)$에 있는 상자의 아이템은 얻을 수 없고, $(e_x, e_y)$에 있는 상자의 아이템은 얻을 수 있다.
자동차는 $(1, 1)$에서 시작해 총 $Q$번 이동한다. 자동차의 이동 방향과 거리가 주어지면, $Q$번의 이동에서 얻게 되는 아이템의 총 개수를 구하시오.
입력 형식
첫 번째 줄에 상자의 개수 $N$과 이동 횟수 $Q$가 공백으로 구분되어 주어진다.</p>
이후 $N$개의 줄이 주어진다. 이 중 i번째 줄에는 세 정수 $x_i$, $y_i$, $w_i$가 공백으로 구분되어 주어진다. 이는 $i$번째 상자가 $(x_i , y_i)$에 있으며, 이 위치를 지날 때마다 $w_i$개의 아이템을 얻게 됨을 의미한다.
이후 $Q$개의 줄이 주어진다. 이 중 $j$번째 줄에는 두 정수 $d_j$, $v_j$가 공백으로 구분되어 주어진다. 이는 자동차가 $d_j$방향으로 $v_j$만큼 이동함을 의미한다.
출력 형식
첫 번째 줄에 $Q$번의 이동에서 얻게 되는 아이템의 총 개수를 출력한다.
예제 입력 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
예제 출력 1
24
예제 입력 2
3 3
1 3 1
2 2 1
3 1 1
1 3
0 2
3 3
예제 출력 2
2
Comments