10分求改
查看原帖
10分求改
694033
DUhongchang120303楼主2025/1/15 21:44

为什么我4个方向都判断了才得10分至少得50分呀

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int n,m;
    cin>>n>>m;
    char s[n+1][m+1],sum=0;
    for(int i=1;i<=n;i++){
    	for(int j=1;j<=m;j++){
    		cin>>s[i][j];
		}
	}
	for(int k=1;k<=n;k++){
		sum=0;
	    for(int i=k;i<=n;i++){
    		for(int j=1;j<=m;j++){
    			sum+=s[i][j];
			}
		}
		if(sum*2==(n-k+1)*m){
			cout<<sum*2;
			return 0;
		}
	}
	for(int k=1;k<=m;k++){
		sum=0;
	    for(int i=1;i<=n;i++){
    		for(int j=k;j<=m;j++){
    			sum+=s[i][j];
			}
		}
		if(sum*2==(m-k+1)*n){
			cout<<sum*2;
			return 0;
		}
	}
	for(int k=n;k>=1;k--){
		sum=0;
	    for(int i=1;i<=k;i++){
    		for(int j=1;j<=m;j++){
    			sum+=s[i][j];
			}
		}
		if(sum*2==k*m){
			cout<<sum*2;
			return 0;
		}
	}
	for(int k=m;k>=1;k--){
		sum=0;
	    for(int i=k;i<=n;i++){
    		for(int j=1;j<=k;j++){
    			sum+=s[i][j];
			}
		}
		if(sum*2==n*k){
			cout<<sum*2;
			return 0;
		}
	}
    cout<<0;
	return 0; 
}
2025/1/15 21:44
加载中...