#C. 机器人吸尘器

    Type: Default File IO: robot 1000ms 512MiB

机器人吸尘器

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目描述

我们来看一个坐标平面,计划使用机器人吸尘器进行清洁。机器人吸尘器是一个大小为 k×kk \times k 的正方形,边与坐标轴平行。最初,机器人的左下角位于点 (0,0)(0,0),右上角位于点 (k,k)(k, k)

给定机器人在平面上的 nn 次移动,第 ii 次移动由方向 did_{i} 和距离 aia_{i} 描述。方向 did_{i} 可以是 N(向上,增加 YY 坐标),S(向下,减少 YY 坐标),W(向左,减少 XX 坐标)或 E(向右,增加 XX 坐标),aia_{i} 是移动的距离。

图中展示了机器人在每个方向上的可能移动。 机器人在每一时刻都会清洁其所在的整个区域。换句话说,当某个点在某一时刻属于机器人所在的 k×kk \times k 的正方形时,该点就被清洁了。

根据给定的机器人移动,计算被清洁的总面积。

输入格式

第一行输入包含两个整数:机器人的大小 kk 和命令数量 nn (1k104,1n105)(1 \leq k \leq 10^4, 1 \leq n \leq 10^5)

接下来的 nn 行中,每行包含一个方向 did_{i} 和一个距离 aia_{i}did_{i}NSWE1ai1091 \leq a_{i} \leq 10^9)。

输出格式

输出被机器人清洁的总面积。

1 5
E 2
N 2
W 4
S 4
E 4
17
3 4
W 2
N 1
W 1
N 2
27

下面是根据题目中的样例,机器人移动的示意图。机器人移动过程中访问过的格子被阴影标出。

数据范围与提示

详细子任务附加限制及分值如下表所示。

子任务 分值 附加限制 子任务依赖
11 99 k=1,n10,ai10k=1, n \leq 10, a_{i} \leq 10
22 1010 k10,n10,ai100k \leq 10, n \leq 10, a_{i} \leq 100 11
33 1111 k1000,n1000,ai=1k \leq 1000, n \leq 1000, a_{i}=1
44 88 k104,n105,ai=kk \leq 10^4, n \leq 10^5, a_{i}=k
55 1414 k=1,n1000,ai109k=1, n \leq 1000, a_{i} \leq 10^9 11
66 1515 k104,n1000,ai109k \leq 10^4, n \leq 1000, a_{i} \leq 10^9 13,51\sim 3,5
77 1616 k=1,n105,ai109k=1, n \leq 10^5, a_{i} \leq 10^9 1,51,5
88 1717 k104,n105,ai109k \leq 10^4, n \leq 10^5, a_{i} \leq 10^9 171\sim 7

NOIP模拟赛

Not Attended
Status
Done
Rule
OI
Problem
4
Start at
2024-10-23 8:00
End at
2024-10-23 12:00
Duration
4 hour(s)
Host
Partic.
26