90,大佬救命!!!!!!!!!!!!!!1
查看原帖
90,大佬救命!!!!!!!!!!!!!!1
680110
Hey_China楼主2024/7/6 10:48
#include<bits/stdc++.h>
using namespace std;
long long n,m;
long long a[3009][3009],s[3009][3009];
int main() {
	scanf("%lld%lld",&n,&m);
	for(long long i = 1; i<=n; i++) {
		for(long long j = 1; j<=m; j++) {
			scanf("%lld",&a[i][j]);
		}
	}
	for (long long i = 1; i <= n; i ++){
		for (long long j = 1; j <= n; j ++){
			s[i][j] = s[i][j - 1] + a[i][j];
		} 
	}
		
	for (long long j = 1; j <= n; j ++){
		for (long long i = 1; i <= n; i ++){
			s[i][j] += s[i - 1][j];
		}
	}
//	for(long long i =1;i<=n;i++){
//		for(long long j = 1;j<=m;j++){
//			cout<<s[i][j]<<" ";
//		}
//		cout<<endl;
//	}
	long long maxx = -1;
	for(long long i = 1; i<=n; i++) {
		for(long long j = 1; j<=m; j++) {
			for(long long l = 1; l<=min(i,j);l++) {
				long long mj = s[i][j]-s[i-l][j]-s[i][j-l]+s[i-l][j-l];
				if(mj == l*l) {
					maxx = max(maxx,l);
				}
				cout<<mj<<endl;
			}
		}
	}
	cout<<maxx;
//    s[x2][y2] - s[x1 - 1][y2] - s[x2][y1 - 1] + s[x1 - 1][y1 - 1]

	return 0;
}

90分,WA第五个点,大佬求调

2024/7/6 10:48
加载中...