SZTG-NOIP-U1383. Pudding Monsters

提交0 通过1
通过率0%
时间限制2000ms
内存限制256MiB

题目描述

题目描述

在本题中,你将遇到游戏 Pudding Monsters 的简化模型。

开发任何游戏时,一个重要过程是创建关卡。Pudding Monsters 中的游戏场地是一个 n×n n×n 的矩形网格,其中 n n 个格子包含怪物,其他一些格子包含游戏物体。游戏玩法是让怪物在场地中移动。当两个怪物彼此接触时,它们会粘在一起,变成一个大的怪物(它们是布丁做的,还记得吗?)。

统计数据显示,如果初始时每一行和每一列都恰好包含一个怪物,而地图的其余细节通过正确放置其他游戏物体来设置,那么会出现最有趣的地图。

一种被广泛用于提高开发效率的技术是复用已有资源。例如,如果有一张很大的 n×n n×n 地图,你可以在其中选择一个较小的 k×k k×k 正方形部分,其中恰好包含 k k 个怪物,并将它作为原始地图的简化版本。

你想知道在初始地图中有多少种方式可以选择一个 k×k k×k (1≤k≤n 1 \le k \le n )的正方形片段,使其恰好包含 k k 个布丁怪物。计算这个数量。

输入格式

第一行包含一个整数 n n (1≤n≤3×105 1 \le n \le 3×10^{5} )——初始场地的大小。

接下来 n n 行包含初始包含怪物的格子的坐标。接下来这些行中的第 i i 行包含两个数 ri,ci r_{i},c_{i} (1≤ri,ci≤n 1 \le r_{i},c_{i} \le n )——初始包含第 i i 个怪物的格子的行号和列号。

保证所有 ri r_{i} 互不相同,且所有 ci c_{i} 互不相同。

输出格式

输出原始场地中可以形成一张新地图的不同正方形片段数量。

5
1 1
4 3
3 2
2 4
5 5
10