居然只得30分
查看原帖
居然只得30分
1093166
zhengminzhuo1212楼主2023/11/15 21:30
#include<bits/stdc++.h>
using namespace std;
int n,m,ans;
int a[105][105],s[105][105];
int c(int l1,int r1,int l2,int r2){
	return s[l2][r2]-s[l1-1][r2]-s[l2][r1-1]+s[l1-1][r1-1];
}
int main(){
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			cin>>a[i][j];
		}
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			s[i][j]=s[i][j-1]+s[i-1][j]-s[i-1][j-1]+a[i][j];
		}
	}
	for(int i=1;i<=min(n,m);i++){
		for(int j=1;j<=n-i;j++){
			for(int k=1;k<=m-i;k++){
				if(c(j,k,j+k-1,i+j-1)==k*k) ans=max(ans,k);
			}
		}
	}
	cout<<ans<<endl;
	return 0;
}

5个RE,2个WA,求助

2023/11/15 21:30
加载中...