CF2008B.Square or Not

入门

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

漂亮的二进制矩阵是指在四周边缘全为 1 而内部全为 0 的矩阵。

如下图所示为四个漂亮的二进制矩阵的示例。今天,Sakurako 玩了一种大小为 r×cr \times c 的漂亮二进制矩阵,并通过从第一行到第 rr 行依次记录每一行的内容,生成了一段二进制字符串 ss。更具体地,第 ii 行第 jj 列的元素对应于字符串中的第 ((i−1)⋅c+j)((i-1) \cdot c + j) 个字符。

你需要检查,生成字符串 ss 的这个漂亮矩阵是否能成为一个方形矩阵。换句话说,你需要判断字符串 ss 是否可以由一个边长相等的漂亮二进制矩阵(即 r=cr = c)形成。

输入格式

第一行包含一个整数 tt(1≤t≤1041 \le t \le 10^4),表示测试用例的数量。

每个测试用例的第一行包含一个整数 nn(2≤n≤2⋅1052 \le n \le 2 \cdot 10^5),表示字符串的长度。

每个测试用例的第二行给出一个长度为 nn 的字符串 ss。该字符串是由一个漂亮矩阵的行内容依次拼接而成。

保证所有测试用例中字符串长度 nn 的总和不超过 2⋅1052 \cdot 10^5。

输出格式

对每个测试用例,如果原始矩阵可以是方形的,输出 "Yes";否则输出 "No"。

示例与提示

在第二个测试用例中,字符串 1111 可以通过以下的矩阵得到:

1111\begin{array}{cccc} 1 & 1 & 1 & 1 \\ \end{array}

在第三个测试用例中,字符串 111101111 可以通过以下的矩阵得到:

111101111\begin{array}{ccc} 1 & 1 & 1 \\ 1 & 0 & 1 \\ 1 & 1 & 1 \\ \end{array}

在第四个测试用例中,没有一个方形矩阵能够生成该字符串。

本翻译由 AI 自动生成

输入输出样例

  • 输入#1

    5
    2
    11
    4
    1111
    9
    111101111
    9
    111111111
    12
    111110011111

    输出#1

    No
    Yes
    Yes
    No
    No

输入解题思路,AI测评打分。不知道怎么写?

首页