1172: 矩阵边界和(指针专题)
来源:互联网 发布:知乎社区 官网 编辑:程序博客网 时间:2024/06/06 00:35
Description
给定一个m行n列的二维矩阵,求其四周边元素和。1<=m、n<=100000,可能是1行100000列,也可能是10000行50列,但保证矩阵元素不多于500000。你可能不能预定义数组的大小了,你要学会使用动态内存分配哦。你可以动态申请m*n个内存单元,然后用一维数组来存储二维数组,二维数组元素a[i][j]对应一维数组a[i*n+j],i、j均从0开始。
Input
输入第一行是m和n,然后是一个m行n列的矩阵。
Output
输出一个整数,表示矩阵所有边界元素的和。
Sample Input
3 41 2 3 4 5 6 7 8 9 5 4 6
Sample Output
47
HINT
#include <stdio.h>#include <stdlib.h>int main(){ int m,n; scanf("%d%d",&m,&n); int *p; int sum=0; p=(int *)calloc(m*n,sizeof(int));//申请内存并初始化为零 int i,j; for(i=0; i<m; i++) for(j=0; j<n; j++) { scanf("%d",&p[i*n+j]); } for(i=0;i<m;i++) { for(j=0;j<n;j++) { if((i==0)||(j==0)||(i==m-1)||(j=n-1)) sum+=p[i*n+j];//为什么乘以n,而不是m,你可以仔细的思考下 } } printf("%d",sum); free(p); return 0;}
代码如果看不懂,可以先看我c语言类中关于指针数组,数组指针以及二维数组的那篇文章
阅读全文
0 0
- 1172: 矩阵边界和(指针专题)
- 1160: 矩阵的最大值(指针专题)
- 1160: 矩阵的最大值(指针专题)
- 1175: 矩阵转置(指针专题)
- 专题四-指针和数组(上)
- 矩阵专题
- 矩阵专题
- 【矩阵专题】
- 矩阵专题
- 1168: 账单(指针专题)
- 1171: 加密(指针专题)
- 1168: 账单(指针专题)
- 关于const和指针的专题
- 专题四-指针和数组下
- 指针专题
- 指针专题
- 指针专题
- 指针专题
- 位运算
- Yii提交报错 An Error occurred while handling another error:
- 安卓手册摘录
- java调用接口的各种方法
- 51Nod-1469-淋漓尽致子串
- 1172: 矩阵边界和(指针专题)
- 函数的声明方式
- C++关联容器类:集合和多重集合类、映射和多重映射类
- js之数组
- 根据url生成二维码
- Remove Duplicates from Sorted Array II问题及解法
- 2017.8.2——广搜(bfs)+队列的使用
- 并查集
- poj1845 逆元 因子和