首页 > 分享 > 矩阵乘法(摆花)

矩阵乘法(摆花)

矩阵乘法(摆花)

最新推荐文章于 2024-09-12 22:09:40 发布

KatnissJ 于 2015-09-28 19:53:20 发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

摆花
【问题描述】
艺术馆门前将摆出许多花,一共有 n 个位置排成一排,每个位置可以摆花也
可以不摆花。有些花如果摆在相邻的位置(隔着一个空的位置不算相邻),就不
好看了。假定每种花数量无限,求摆花的方案数。
【输入】输入文件名为(flowers.in)
输入有 1+m 行,第一行有两个用空格隔开的正整数 n、 m, m 表示花的种类数。接
下来的 m 行,每行有 m 个字符 1 或 0, 若第 i 行第 j 列为 1,则表示第 i 种花和第
j 种花不能排在相邻的位置,输入保证对称。(提示:同一种花可能不能排在相
邻位置)。
【输出】输出文件名为(flowers.out)
输出只有一个整数,为方案数(这个数字可能很大,请输出方案数除以
1000000007 的余数)。
flowers.in flowers.out
2 2
01
10
7
样例解释
七种方案为(空,空) 、(空, 1)、( 1、空)、( 2、空)、(空、 2)、( 1,1)、( 2,2)
数据范围与约定
对于 20%的数据, 1<n≤5,0<m≤10。
对于 60%的数据, 1<n≤200,0<m≤100。
对于 100%的数据, 1<n≤1000000000, 0<m≤100。

很容易知道dp公式为f[i][j]+=f[i-1][k](map[k][j]==0)

由于n很大,这时就用到矩阵乘法。

f[i][0]  f[i-1][0] 1 1 1

f[i][1] = f[i-1][1]*1 1 0

f[i][2]  f[i-1][2] 1 0 1

可以发现,乘上的这个矩阵就是输入的矩阵,任何不摆花可以和所有花相邻。

相关知识

6的乘法口诀 (2)
Fuzzy矩阵方程X·A=X·B的求解
矩阵AB=BA的充要条件是? 爱问知识人
【帮我解决这些用十字相乘法解决的因式最好告诉我如何解这些式子x四次方
“一朵花”给魔都这样“做乘法”!
基于矩阵补全及神经网络PID的智能节水型喷洒系统及方法
不做品牌账号矩阵=慢性自杀!做好小红书?先做30个品牌账号
已知A,B均为n阶非零矩阵,且AB=O,则
“四心四合”心育矩阵促进学生心理健康
设矩阵 不可对角化,则a=

网址: 矩阵乘法(摆花) https://m.huajiangbk.com/newsview395359.html

所属分类:花卉
上一篇: 卡通浇水gif图片
下一篇: 卡通浇水图片