CF1926B Vlad and Shapes
题目描述
Vladislav 有一个 $n \times n$ 的二进制正方形网格。在网格上用符号 $\texttt{1}$ 画出了一个三角形或正方形。由于他太忙于耍酷了,他请你帮他判断网格上画的是哪种图形。
- 三角形是指由 $k$($k>1$)个连续的行组成的图形,其中第 $i$ 行有 $2 \cdot i-1$ 个连续的 $\texttt{1}$,且这些 $\texttt{1}$ 居中于某一列。倒三角形(顶点朝下)也算作有效的三角形(但不包括旋转 $90$ 度的情况)。
 左边两幅图是三角形的例子:$k=4$,$k=3$。右边两幅图不是三角形。
- 正方形是指由 $k$($k>1$)个连续的行组成的图形,其中第 $i$ 行有 $k$ 个连续的 $\texttt{1}$,并且这些 $\texttt{1}$ 距离网格左边界的距离相等。
 这是两个正方形的例子:$k=2$,$k=4$。
对于给定的网格,请判断画的是哪种图形。
输入格式
第一行包含一个整数 $t$($1 \leq t \leq 100$),表示测试用例的数量。
每个测试用例的第一行包含一个整数 $n$($2 \leq n \leq 10$),表示网格的大小。
接下来的 $n$ 行,每行包含 $n$ 个字符,字符为 $\texttt{0}$ 或 $\texttt{1}$。
网格中恰好有一个三角形或一个正方形,且所有的 $\texttt{1}$ 都属于该图形。保证三角形或正方形的大小大于 $1$(即图形不能只由一个 $\texttt{1}$ 组成)。
输出格式
对于每个测试用例,如果所有的 $\texttt{1}$ 在网格中构成一个正方形,输出 "SQUARE";否则输出 "TRIANGLE"(不带引号)。
说明/提示
由 ChatGPT 4.1 翻译