90!#5过不去
查看原帖
90!#5过不去
1294187
cyq111111楼主2024/5/24 21:07
#include<bits/stdc++.h>
using namespace std;
bool havecarrot[30][30];
int main(){
	int n,m,k;
	cin >> n >> m >> k;
	int minRecArea=123456789;
	int thisix,thisiy,thisjx,thisjy;
	for(int i = 1;i<=n;i++){
		for(int j = 1;j<=m;j++){
			cin >> havecarrot[i][j];
		}
	}
	for(int ix = 1;ix<=n;ix++){
		for(int iy = 1;iy<=n;iy++){
			for(int jx = ix;jx<=min(ix+k,n);jx++){
				for(int jy = iy;jy<=min(iy+k,m);jy++){
					
					int carrotnum = 0;
					for(int i = ix;i<=jx;i++){
						for(int j = iy;j<=jy;j++){
							if(havecarrot[i][j]) carrotnum++;
						}
					}
					if(carrotnum>=k){
						minRecArea=min(minRecArea,(jx-ix+1)*(jy-iy+1));
						if(minRecArea==(jx-ix+1)*(jy-iy+1)){
							thisix=ix;
							thisiy=iy;
							thisjx=jx;
							thisjy=jy;
						}
					}
					
				}
			}
		}
	}
	cout << minRecArea;
//	cout << '\n' << thisix << ' ';
//	cout << thisiy << ' ' << thisjx << ' ' << thisjy;
	return 0;
}
2024/5/24 21:07
加载中...