#P11001. [蓝桥杯 2024 省 Python B] 连连看

[蓝桥杯 2024 省 Python B] 连连看

题目描述

小蓝正在和朋友们玩一种新的连连看游戏。在一个 n×mn \times m 的矩形网格中,每个格子中都有一个整数,第 ii 行第 jj 列上的整数为 Ai,jA_{i,j}。玩家需要在这个网格中寻找一对格子 (a,b)(a,b)(c,d)(c,d) 使得这两个格子中的整数 Aa,bA_{a,b}Ac,dA_{c,d} 相等,且它们的位置满足 ac=bd>0|a-c| = |b-d| > 0。请问在这个 n×mn \times m 的矩形网格中有多少对这样的格子满足条件。

输入格式

输入的第一行包含两个正整数 nnmm,用一个空格分隔。

接下来是 nn 行,第 ii 行包含 mm 个正整数 Ai,1,Ai,2,,Ai,mA_{i,1}, A_{i,2}, \dots, A_{i,m},相邻整数之间用一个空格分隔。

输出格式

输出一行包含一个整数表示答案。

3 2 
1 2 
2 3 
3 2

6

提示

一共有以下 6 对格子:(1,2)(2,1)(1,2)−(2,1)(2,2)(3,1)(2,2)−(3,1)(2,1)(3,2)(2,1)−(3,2)(2,1)(1,2)(2,1)−(1,2)(3,1)(2,2)(3,1)−(2,2)(3,2)(2,1)(3,2)−(2,1)

数据范围

对于 20%20\% 的评测用例,1n,m501 \leq n, m \leq 50

对于所有评测用例,1n,m10001 \leq n, m \leq 10001Ai,j10001 \leq A_{i,j} \leq 1000