P3663 [USACO17FEB] Why Did the Cow Cross the Road III S

题目描述

奶牛为什么要过马路?其中一个原因是 Farmer John 的农场有很多道路,使得他的奶牛在四处走动时不可避免地要穿过许多道路。 FJ 的农场被安排成一个 $N \times N$ 的方形网格田地($2 \leq N \leq 100$),某些相邻的田地(例如南北向或东西向)被道路分隔,整个网格的外部有一圈高高的围栏,防止奶牛离开农场。奶牛可以从任何田地自由移动到相邻的田地(北、东、南或西),尽管它们除非绝对必要,否则不愿意穿过道路。 农场上有 $K$ 头奶牛($1 \leq K \leq 100, K \leq N^2$),每头奶牛位于不同的田地。如果一头奶牛要拜访另一头奶牛时必须至少穿过一条道路,那么这对奶牛被称为“远距离”对。请帮助 FJ 计算远距离奶牛对的数量。

输入格式

输入的第一行包含 $N$、$K$ 和 $R$。接下来的 $R$ 行描述了 $R$ 条存在于相邻田地之间的道路。每行的格式为 $r$ $c$ $r'$ $c'$(范围为 $1 \ldots N$ 的整数),表示位于(行 $r$,列 $c$)的田地与相邻的(行 $r'$,列 $c'$)的田地之间有一条道路。最后的 $K$ 行表示 $K$ 头奶牛的位置,每行用行和列指定。

输出格式

输出远距离奶牛对的数量。