c语言矩阵乘法问题分析,C语言 · 矩阵乘法 · 算法训练

问题描述

输入两个矩阵,分别是m*s,s*n大小。输出两个矩阵相乘的结果。

输入格式

第一行,空格隔开的三个正整数m,s,n(均不超过200)。

接下来m行,每行s个空格隔开的整数,表示矩阵A(i,j)。

接下来s行,每行n个空格隔开的整数,表示矩阵B(i,j)。

输出格式

m行,每行n个空格隔开的整数,输出相乘後的矩阵C(i,j)的值。

样例输入

2 3 2

1 0 -1

1 1 -3

0 3

1 2

3 1

样例输出

-3 2

-8 2

提示

矩阵C应该是m行n列,其中C(i,j)等于矩阵A第i行行向量与矩阵B第j列列向量的内积。

例如样例中C(1,1)=(1,0,-1)*(0,1,3) = 1 * 0 +0*1+(-1)*3=-3

编译器很诡异。之前一直非满分,因为数组规格太小,刚刚定义的m*s,s*n,m*n大小,题目要求:msn每个大小不超过200,索性直接将数组规模都改为了300——总之,规模要比预期的大一些才好。

#include

int main(){

int m,s,n;

/*输入m,s,n*/

scanf("%d%d%d",&m,&s,&n);

/*定义三个二维数组,并赋初值为0*/

int A[][]={},B[][]={},C[][]={};

/*录入A[m][s]*/

for(int i=;i

for(int j=;j

scanf("%d",&A[i][j]);

}

}

/*录入B[s][n]*/

for(int i=;i

for(int j=;j

scanf("%d",&B[i][j]);

}

}

/*乘法计算,输出结果*/

for(int i=;i

for(int j=;j

for(int z=;z

C[i][j] += A[i][z]*B[z][j];

}

for(int i=;i

for(int j=;j

printf("%d ",C[i][j]);

printf("\n");

}

}

C语言 · 矩阵相乘 · 算法提高

算法提高 矩阵相乘   时间限制:1.0s   内存限制:256.0MB      问题描述 小明最近在为线性代数而头疼,线性代数确实很抽象(也很无聊),可惜他的老师正在讲这矩阵乘法这一段内容. 当然 ...

C语言 · 数字三角形 · 算法训练

问题描述 (图3.1-1)示出了一个数字三角形. 请编一个程序计算从顶至底的某处的一条路 径,使该路径所经过的数字的总和最大. ●每一步可沿左斜线向下或右斜线向下走: ●1

C语言 · 矩阵乘法

问题描述 输入两个矩阵,分别是m*s,s*n大小.输出两个矩阵相乘的结果. 输入格式 第一行,空格隔开的三个正整数m,s,n(均不超过200). 接下来m行,每行s个空格隔开的整数,表示矩阵A(i,j ...

《算法导论》——矩阵乘法的Strassen算法

前言: 很多朋友看到我写的系列,可能会觉得云里雾里,不知所云.这里我再次说明,本系列博文时配合一书,给出该书涉及的算法的c++实现.请结合

【甘道夫】MapReduce实现矩阵乘法--实现代码

之前写了一篇分析MapReduce实现矩阵乘法算法的文章: [甘道夫]Mapreduce实现矩阵乘法的算法思路 为了让大家更直观的了解程序运行,今天编写了实现代码供大家參考. 编程环境: java v ...

蓝桥杯 算法训练 ALGO-60 矩阵乘法

算法训练 矩阵乘方   时间限制:1.0s   内存限制:512.0MB 问题描述 给定一个矩阵A,一个非负整数b和一个正整数m,求A的b次方除m的余数. 其中一个nxn的矩阵除m的余数得到的仍是一个 ...

Java实现 蓝桥杯 算法训练 矩阵乘法

算法训练 矩阵乘法 时间限制:1.0s 内存限制:512.0MB 提交此题 问题描述 输入两个矩阵,分别是ms,sn大小.输出两个矩阵相乘的结果. 输入格式 第一行,空格隔开的三个正整数m,s,n(均 ...

第四章 分治策略 4.2 矩阵乘法的Strassen算法

package chap04_Divide_And_Conquer; import static org.junit.Assert.*; import java.util.Arrays; import ...

4-2.矩阵乘法的Strassen算法详解

题目描述 请编程实现矩阵乘法,并考虑当矩阵规模较大时的优化方法. 思路分析 根据wikipedia上的介绍:两个矩阵的乘法仅当第一个矩阵B的列数和另一个矩阵A的行数相等时才能定义.如A是m×n矩阵和B ...

随机推荐

c# asp.net4.0尚未在web服务器上注册

辗转无数论坛,感谢http://bbs.csdn.net/topics/390992746 microsoft官方文档: https://blogs.msdn.microsoft.com/webdev ...

KinectV2+Ubuntu 14.04+Ros 安装教程

前言 个人理解错误的地方还请不吝赐教,转载请标明出处,内容如有改动更新,请看原博:http://www.cnblogs.com/hitcm/ 如有任何问题,feel free to contact m ...

ASP.NET MVC使用过滤器进行权限控制

1.新建MVC项目 2.找到Models文件夹,新建 LoginCheckFilterAttribute 类 public class LoginCheckFilterAttribute : Acti ...

LoadRunner 脚本学习 -- 随机函数运用

直接上码 Action() { int randnum; randnum = rand()%+; lr_output_message("随机得到的数是:%d", randnum); ...

C++基础内容复习

下列语句定义了5个变量: int count; double sales_price,sum; std::string title; Sales_item bookItem; 每个定义都是以类型说明符 ...

iOS 进阶 第十天(0410)

0410 在tableViewCell之间添加一根线,通栏 iOS应用数据存储的常用方式 plist存储文件 plist读取文件 下面是plist存储读取的图解: 注意:plist只能存储常见的属性. ...

android短信的接收和发送处理

一 初始化 手机开机初始化调用GSMPhone 构造函数. GSMPhone (Context context, CommandsInterface ci, PhoneNotifier notifie ...

php 常用的好函数(持续更新)

parse_url parse_url $url = "http://www.electrictoolbox.com/php-extract-domain-from-full-url/&qu ...

NGUI如何创建自己的精灵图集

说实话其实很简单,但是在不知道的情况下真的不好弄啊. 1. 选择你要制作精灵图集的图片,可以选择多张 2. 提倡使用快捷键Alt + Shift + M 会有如下窗口弹出,也可以NGUI --> ...

KETTLE使用入门

一.准备文件 1.安装java虚拟机 2.安装kettle安装文件 二.使用步骤 1.点击Spoon.bat,启动kettle,弹出DOS窗口如下: 2.进入主界面 3.新建资源库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值