U32593.连通三元组(加强版)

普及+/提高

通过率:0%

时间限制:1.00s ~ 2.00s

内存限制:128MB

题目描述

给你一个有 nn 个顶点的无向图 gggg 使用 n×nn × n 的邻接矩阵来表示。

g[i][j]=1g[i][j] = 1 则表示顶点 iijj 之间有一条边,否则表示没有边连接。

如果一个三元组 (i,j,k)(i,j,k) 满足以下条件则被称为连通三元组:顶点 iijj 之间有一条边,顶点 jjkk 之间有一条边,顶点 iikk 之间有一条边。即:g[i][j]=g[j][k]=g[i][k]=1g[i][j] = g[j][k] = g[i][k] = 1

求图中连通三元组的个数。

输入格式

第一行:邻接矩阵边长 nn

nn 行:邻接矩阵 gg 的每一行。

输出格式

一个整数,代表连通三元组的个数

输入输出样例

  • 输入#1

    1
    1

    输出#1

    0
  • 输入#2

    4
    0011
    0011
    1101
    1110

    输出#2

    2

说明/提示

1n40001 ≤ n ≤ 4000

可能需要较快的读入输出

样例1:图中不存在连通三元组。

样例2:三元组 (i,j,k)=(1,3,4),(2,3,4)(i,j,k) = (1,3,4),(2,3,4) 满足题目条件。三元组 (i,j,k)=(1,2,3)(i,j,k) = (1,2,3) 不满足题目条件,因为顶点 1122 之间没有边连接。所以连通三元组的数量为 22

首页