【OpenJudge】计算矩阵边缘元素之和
2017-01-21 18:14
302 查看
4:计算矩阵边缘元素之和
查看提交
统计
提问
总时间限制: 1000ms 内存限制: 65536kB
描述
输入一个整数矩阵,计算位于矩阵边缘的元素之和。所谓矩阵边缘的元素,就是第一行和最后一行的元素以及第一列和最后一列的元素。
输入第一行为整数k,表示有k组数据。
每组数据有多行组成,表示一个矩阵:
第一行分别为矩阵的行数m和列数n(m < 100,n < 100),两者之间以空格分隔。
接下来输入的m行数据中,每行包含n个整数,整数之间以空格作为间隔。
输出输出对应矩阵的边缘元素和,一个一行。
样例输入
2 4 4 1 1 1 1 0 0 0 0 1 0 1 0 0 0 0 0 3 3 3 4 1 3 7 1 2 0 1
样例输出
5 15
/* 输入一个整数矩阵,计算位于矩阵边缘的元素之和, 输入:第一行是整数k 表示 有k组数组 第二行是矩阵的行数和列数。 都<100 */ #include<stdio.h> #define N 100 int main() { int n;//有几组数组 int i = 0; //行 int j = 0; //列 int a ; int (*pa) = a; int sum = 0; scanf("%d",&n); for(int k=0;k<n;k++) { scanf("%d %d",&i,&j);//几行几列 for(int p = 0; p < i; p++) for(int q = 0;q < j;q++) scanf("%d",*(pa+p)+q); // for(int p = 0; p < i; p++) for(int q = 0;q < j;q++) { if(p==0) sum += *(*(pa+p)+q); else if(q==0||q==(j-1)) sum+=*(*(pa+p)+q); else if(p==i-1) sum+=*(*(pa+p)+q); } printf("%d\n",sum); sum = 0; } return 0; }
相关文章推荐
- 计算矩阵边缘元素之和 (Coursera 程序设计与算法 专项课程2 C程序设计进阶 李戈;OpenJudge)
- Openjudge计算概论-计算矩阵边缘元素之和
- 计算矩阵边缘元素之和
- 计算矩阵边缘元素之和
- 输入一个整数矩阵,计算位于矩阵边缘的元素之和。所谓矩阵边缘的元素,就是第一行和最后一行的元素以及第一列和最后一列的元素。
- 计算矩阵边缘元素之和
- 03:计算矩阵边缘元素之和
- 041:计算矩阵边缘元素之和
- 二维数组练习03_计算矩阵边缘元素之和
- 计算矩阵边缘元素之和
- [土狗之路]coursera C语言进阶习题 计算矩阵边缘元素之和
- 计算矩阵边缘元素之和(C程序设计进阶第5周)
- :计算矩阵边缘元素之和
- poj 计算矩阵边缘元素之和
- 计算矩阵边缘元素之和
- T1121 计算矩阵边缘元素之和(#Ⅰ- 5 - 2)
- 03:计算矩阵边缘元素之和
- 计算矩阵边缘元素之和
- 输入一个整数矩阵,计算位于矩阵边缘的元素之和
- 设M 是一个m×n 的矩阵,其中每行的元素从左到右单增有序,每列的元素从上到下单增有序。 给出一个分治算法计算出给定元素x 在M 中的位置或者表明x 不在M 中。分析算法的时间复杂性。