#B0129. 朝花夕拾2

朝花夕拾2

题目描述

给定一个有 NN 个点的简单有向图,点的编号为 1N1\sim N

对于每一对点 (i,j)(i,j),给出一个整数 ai,ja_{i,j}

  • ai,j=1a_{i,j}=1,表示图中存在一条从点 ii 指向点 jj 的有向边;
  • ai,j=0a_{i,j}=0,表示这条有向边不存在。

请你求出:这张图中长度恰好为 KK 的有向路径一共有多少条,答案对 109+710^9+7 取模。

注意:

  • 这里的“长度为 KK”指路径恰好经过 KK 条边;
  • 允许一条路径中重复经过同一条边
  • 图是简单有向图,因此不存在自环,即 ai,i=0a_{i,i}=0

输入格式

第一行两个整数 N,KN,K
接下来 NN 行,每行 NN 个整数,第 ii 行第 jj 个整数表示 ai,ja_{i,j}

  • 1N501\le N\le 50
  • 1K10181\le K\le 10^{18}
  • ai,j{0,1}a_{i,j}\in\{0,1\}
  • ai,i=0a_{i,i}=0

输出格式

输出一个整数,表示长度恰好为 KK 的有向路径总数,对 109+710^9+7 取模后的结果。

4 2
0 1 0 0
0 0 1 1
0 0 0 1
1 0 0 0
6

Hint

样例解释: 长度为 22 的有向路径共有 6 条:

  • 1231\to 2\to 3
  • 1241\to 2\to 4
  • 2342\to 3\to 4
  • 2412\to 4\to 1
  • 3413\to 4\to 1
  • 4124\to 1\to 2