教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 高等教育 >

山东科技大学OJ集锦(13)

来源:网络收集 时间:2026-10-05
导读: 输入的第一行为一个整数M(M>0),后面有M行输入。每行第一个整数为N(N 对输入的整数序列两两相加:第1行和第2行相加、第2行和第3行相加??按顺序输出结果:每行输出一个整数序列,每两个整数之间用一个空格分隔。若最

输入的第一行为一个整数M(M>0),后面有M行输入。每行第一个整数为N(N<=1000),后接一个长度为N的整数序列。 Output

对输入的整数序列两两相加:第1行和第2行相加、第2行和第3行相加??按顺序输出结果:每行输出一个整数序列,每两个整数之间用一个空格分隔。若最后序列不足两个,则视作补一个长度为0的整数序列相加。

值得注意的是一个长度为0的整数序列也应该有输出,即使没有整数输出,也应该占有一行,因为“每行输出一个整数序列”。 Sample Input 3

3 1 2 3

5 10 15 20 30 50 4 100 200 300 400 Sample Output 11 17 23 30 50

110 215 320 430 50 100 200 300 400 HINT

这里最少要用到两个数组来存储整数序列。 Problem D: Matrix Problem : Array Pratice Time Limit: 1 Sec Memory Limit: 4 MB Submit: 826 Solved: 202 [Submit][Status][Web Board] Description

求一个m×n阶矩阵A的转置矩阵AT。矩阵A的每个元素都在int类型的范围之内。 Input

输入的第一行为一个整数M(M>0),后面有M组输入数据。每组数据以两个正整数m和n开始,满足0

输出为多组,每组输出A的转置矩阵AT。矩阵的输出为:每行两个元素之间用一个空格分开,每行最后一个元素之后为一个换行,在下一行开始输出矩阵的下一行。每两组输出之间用一个空行分隔开。 Sample Input 1 3 3 1 2 3 4 5 6 7 8 9

Sample Output 1 4 7 2 5 8 3 6 9 HINT

二维数组存储矩阵。 #include int main() {

int a[100][100]={0},M,m,n,i,j,k,b[100][100]={0}; scanf(\ for(k=0;k

scanf(\ for(i=0;i

scanf(\ for(j=0;j

b[j][i]=a[i][j];

if(i<(m-1))

printf(\ else

printf(\ }

if (k<(M-1)) printf(\ }

return 0; }

Problem E: Matrix Problem (II) : Array Pratice Time Limit: 1 Sec Memory Limit: 4 MB Submit: 382 Solved: 99 [Submit][Status][Web Board] Description

求两个矩阵A、B的和。根据矩阵加法的定义,只有同阶的矩阵才能相加。可以确保所有运算结果都在int类型的范围之内。 Input

输入数据为多个矩阵,每个矩阵以两个正整数m和n开始,满足0

对输入的矩阵两两相加:第1个和第2个相加、第3个和第4个相加??按顺序输出矩阵相加的结果:每行两个元素之间用一个空格分开,每行最后一个元素之后为一个换行,在下一行开始输出矩阵的下一行。

若输入的矩阵不为偶数个,最后剩余的矩阵不产生任何输出。

不满足矩阵加法定义的数据输出“Not satisfied the definition of matrix addition!” 每两组输出之间用一个空行分隔开。 Sample Input 3 3 1 2 3 4 5 6 7 8 9 3 3 9 8 7 6 5 4 3 2 1 3 3 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 1 1

0 0 0

Sample Output 10 10 10 10 10 10 10 10 10

Not satisfied the definition of matrix addition! HINT

矩阵的加法就是对应位置上的元素相加。 #include int main() {

int a[100][100]={0},b[100][100]={0},m,n,i,j,k,num1,num2,x,y; while(scanf(\ {

if(m==0&&n==0) break; else

{for(i=0;i

for(j=0;j

scanf(\ } }

scanf(\ if(x==0&&y==0) break; else {

for (i=0;i

for(j=0;j

scanf(\ }

if(m!=x||n!=y)

printf(\ else {

for(i=0;i

for(j=0;j

if(j==(n-1))

printf(\

else printf(\ }

}

} }

printf(\ }

return 0; }

Problem F: Matrix Problem (III) : Array Pratice Time Limit: 1 Sec Memory Limit: 4 MB Submit: 201 Solved: 34 [Submit][Status][Web Board] Description

求两个矩阵A、B的乘积C=AB。根据矩阵乘法的定义,只有A的列数和B的行数相同才能相乘。可以确保所有运算结果都在int类型的范围之内。 Input

输入数据为多个矩阵(最少2个),每个矩阵以两个正整数m和n开始,满足0

对输入的矩阵两两相乘:第1个和第2个相乘、第1个和第2个相乘的结果和第3个相乘??按顺序输出矩阵相乘的结果:每行两个元素之间用一个空格分开,每行最后一个元素之后为一个换行,在下一行开始输出矩阵的下一行。

若前k个矩阵相乘的结果和第k+1个矩阵无法相乘(即不满足矩阵乘法定义),则输出“Not satisfied the definition of matrix multiplication!”。然后用第k+1个矩阵去和第k+2个矩阵相乘。最后一个矩阵只做乘数。

每两组输出之间用一个空行分隔开。 Sample Input 2 3 1 1 1 1 1 1 3 3 1 2 3 4 5 6 7 8 9 3 1 0 0 0 0 0

Sample Output 12 15 18 12 15 18 0 0

…… 此处隐藏:778字,全部文档内容请下载后查看。喜欢就下载吧 ……
山东科技大学OJ集锦(13).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/612115.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150份
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150份
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)