0pts。。。求大佬指点
查看原帖
0pts。。。求大佬指点
176006
若榆若木楼主2024/3/12 19:44
//代码如下
#include<bits/stdc++.h>
using namespace std;
int a[1005][1005],f[1005][1005];
int main()
{
	int n,m,c;
	int ansx,ansy;
	int ans=-0x7fffffff;
	scanf("%d%d%d",&n,&m,&c);
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			scanf("%d",&a[i][j]);
			f[i][j]=f[i-1][j]+f[i][j-1]+a[i][j]-f[i-1][j-1];
		}
	}
	for(int i=1;i<=n-c+1;i++){
		for(int j=1;j<=m-c+1;j++){
			if(ans!=max(ans,(f[i+c-1][j+c-1]+f[i-1][j-1]-f[i-1][j+c-1]-f[i+c-1][j-1]))){
				ans=max(ans,(f[i+c-1][j+c-1]+f[i-1][j-1]-f[i-1][j+c-1]-f[i+c-1][j-1]));
				ansx=i;
				ansy=j;
			}
		}
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			printf("%d ",f[i][j]);
			}
			printf("\n");
		}
	printf("%d %d",ansx,ansy);
	return 0;
}
2024/3/12 19:44
加载中...