不变矩阵

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

Background

称一个矩阵A为不变矩阵,当且仅当存在正整数N,使得任意n>N,A^n中0的个数全部相同,这个个数称为它的不变元。
定义一个n个顶点有向图的邻接矩阵A满足如下条件:
A是n* n矩阵。
A[i][j]=1当且仅当有一条边起点为顶点i,终点为顶点j,否则A[i][j]=0。

Description

给出若干有向图的邻接矩阵,判断其是否是不变矩阵,如果是请输出其不变元。

Format

Input

第一行两个整数T,n(T<=10,n<=500)表示矩阵数量和大小。
接下来T个矩阵,每个矩阵包含n行输入,第i行第j列的字符表示A[i][j]。
矩阵与矩阵间没有空行。

Output

按照输入顺序,对每个矩阵,如果它不是不变矩阵,则输出一行“No”。
否则输出一行一个整数,表示其不变元。

Sample 1

Input

2 3
011
101
110
000
000
000

Output

0
9

Limitation

1s, 512MB for each test case.

Hint

Free Pascal Code

var a,b:longint;
begin
    readln(a,b);
    writeln(a+b);
end.

C Code

#include <stdio.h>
int main(void)
{
    int a, b;
    scanf("%d%d", &a, &b);
    printf("%d\n", a + b);
    return 0;
}

C++ Code

#include <iostream>
using namespace std;
int main()
{
    int a, b;
    cin >> a >> b;
    cout << a + b << endl;
    return 0;
}

Python Code

a, b = [int(i) for i in raw_input().split()]
print(a + b)

Java Code

import java.io.*;
import java.util.Scanner;

public class Main {

    /**
     * @param args
     * @throws IOException 
     */
    public static void main(String[] args) throws IOException {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();
        System.out.println(a + b);
    }
}

Source

Vijos Original

2019新生赛校外参赛

未参加
状态
已结束
规则
ACM/ICPC
题目
8
开始于
2019-02-23 13:00
结束于
2019-02-23 18:00
持续时间
5.0 小时
主持人
参赛人数
1