解题思路:
1.s[][]为和第二个循环为来赋s的初值。 2.第三个循环来算x与mx判断哪个大 3.输出
注意事项:
要定义mx和x i2,i1,j1,j2 不要弄混
参考代码:
#include<bits/stdc++.h> using namespace std; long long a[101][101],s[101][101],n; int main(){ cin>>n; for(int i=1;i<=n;i++)for(int j=1;j<=n;j++) cin>>a[i][j]; for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++) s[i][j]=s[i-1][j]+s[i][j-1]-s[i-1][j-1]+a[i][j]; } long long mx=a[1][1]; for(int i1=1;i1<=n;i1++){ for(int j1=1;j1<=n;j1++){ for(int i2=i1;i2<=n;i2++){ for(int j2=j1;j2<=n;j2++) { long long x=s[i2][j2]-s[i2][j1-1]-s[i1-1][j2]+s[i1-1][j1-1]; if(x>mx) mx=x; } } } } cout<<mx; return 0; }
0.0分
2 人评分
C语言训练-计算1~N之间所有奇数之和 (C语言代码)浏览:721 |
C语言程序设计教程(第三版)课后习题5.7 (C++代码)浏览:855 |
C语言训练-求函数值 (C语言代码)浏览:938 |
C语言程序设计教程(第三版)课后习题9.8 (Java代码)浏览:1642 |
剪刀石头布 (C语言代码)不知道怎么直接在scanf中用枚举变量浏览:1316 |
C语言程序设计教程(第三版)课后习题8.6 (C语言代码)浏览:600 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:968 |
C语言程序设计教程(第三版)课后习题9.6 (C语言代码)浏览:586 |
1118(求助_已解决)浏览:329 |
数列问题 (C语言代码)浏览:1022 |