CF11C How Many Squares?

题目描述

你有一个 $0 1$ 矩阵。里面有多少个正方形?其中正方形的边用 $1$ 表示。我们现在只对这些正方形感兴趣: 第一种:每条边与矩阵的边平行的正方形; 第二种:每条边与矩阵的对角线平行的正方形。 例如下面的正方形有且只有一个正方形(第一种): ```plain 0000000 0111100 0100100 0100100 0111100 ``` 下面的正方形有且只有一个正方形(第二种): ```plain 0000000 0010000 0101000 0010000 0000000 ``` 一个正方形必须包含一个 $1$ 而且边和角不能接触别的 $1$ 。当然,这是一个正方形,每条边的长度应该相等。 矩阵里有多少个正方形?

输入格式

第一行是一个整数 $t$($1 \le t \le 10000$),表示这个测试点测试数据的组数。接下来是每组测试数据。每组测试数据的第一行有两个整数 $n, m$($2 \le n, m \le 250$),$n$ 是行数 $m$ 是列数。接下来 $n$ 行每行 $m$ 个字符(`0` 或 `1`)。 每组测试数据字符总数不超过 $10^{6}$。 对任何测试点都适用。

输出格式

输出正好 $t$ 行,对应每组测试数据的答案。 ---- 感谢@rose_ 提供的翻译