P15539 [CCC 2026 J4] Snail Path

题目描述

一只蜗牛正在一个由大小相等的方格组成的无限网格上爬行。它可以水平爬行(向东和向西)或垂直爬行(向北和向南),但不能沿对角线爬行。 当蜗牛爬行时,它会留下一条黏液痕迹,使得它接触到的网格方格变得**黏滑**。 例如,在下图中,蜗牛向东爬行 $3$ 格后,会有 $4$ 个**黏滑**的方格,如图所示。 :::align{center} ![](https://cdn.luogu.com.cn/upload/image_hosting/uskvj8wm.png) ::: 给定蜗牛的移动序列,你的任务是确定蜗牛进入**黏滑**方格的次数。

输入格式

第一行输入包含一个正整数 $M$,表示蜗牛的移动次数。 接下来的 $M$ 行将按顺序指定蜗牛的移动。每次移动包含一个大写方向字母($\texttt{N}$、$\texttt{E}$、$\texttt{S}$ 或 $\texttt{W}$),后跟一个不超过 $20$ 的正整数,表示蜗牛在该方向上爬行的方格数。

输出格式

输出一个非负整数 $T$,即蜗牛进入**黏滑**方格的次数。

说明/提示

#### 样例输入 1 的解释 图示显示了蜗牛的路径。每当蜗牛进入一个**黏滑**方格时,路径上会放置一个带编号的圆圈。 注意,一个**黏滑**方格可能被多次进入。 ![](https://cdn.luogu.com.cn/upload/image_hosting/5xsum08l.png) #### 样例输入 2 的解释 蜗牛的路径将包含 $38$ 个**黏滑**方格。然而,蜗牛离开一个方格后从未返回,因此蜗牛从未进入过**黏滑**方格。 下表显示了 $15$ 分的分布情况: | 分数 | 描述 | 范围 | |:-:|:-:|:-:| | $4$ | 蜗牛永远不会从其初始位置向北或向西爬行,且始终靠近初始位置。 | $M \le 20$ | | $3$ | 蜗牛将始终靠近其初始位置。 | $M \le 20$ | | $6$ | 蜗牛可能从其初始位置爬行相当远的距离。 | $M \le 1200$ | | $2$ | 蜗牛可能从其初始位置爬行极远的距离。 | $M \le 200\,000$ |