生草代码求调
查看原帖
生草代码求调
533635
672760syc楼主2023/3/25 20:00
#include<bits/stdc++.h>
using namespace std;
int r,c,sum=0,a[101][101],mini,minj,maxi,maxj,mina=2147483647,maxa=-1;
int main(){
	cin>>r>>c;
	for(int i=0;i<r;i++){
		for(int j=0;j<c;j++){
			cin>>a[i][j];
		}
	}
	for(int i=0;i<r;i++){
		for(int j=0;j<c;j++){
			if(a[i][j]<mina){
				mina=a[i][j];
				mini=i;
				minj=j;
			}
			if(a[i][j]>maxa){
				maxa=a[i][j];
				maxi=i;
				maxj=j;
			}
		}
	}
	mina=114514;
	for(int i=mini;i<=r;){
		for(int j=minj;j<=c;){
			if(mini==maxi&&minj==maxj||a[i+1][j]<a[i][j]&&a[i-1][j]<a[i][j]&&a[i][j-1]<a[i][j]&&a[i][j+1]<a[i][j]){
				cout<<sum;
				return 0;
			}
			if(a[i+1][j]>a[i][j]&&a[i+1][j]<mina){
				mina=a[i+1][j];
				mini=i+1;
			}
			if(a[i-1][j]>a[i][j]&&a[i-1][j]<mina){
				mina=a[i-1][j];
				mini=i-1;
			}
			if(a[i][j+1]>a[i][j]&&a[i][j+1]<mina){
				mina=a[i][j+1];
				minj=j+1;
			}
			if(a[i][j-1]>a[i][j]&&a[i][j-1]<mina){
				mina=a[i][j-1];
				minj=j-1;
			}
			sum++;
		}
	}
	return 0;
}

int main(){ cin>>r>>c; for(int i=0;i<r;i++){ for(int j=0;j<c;j++){ cin>>a[i][j]; } } for(int i=0;i<r;i++){ for(int j=0;j<c;j++){ if(a[i][j]<mina){ mina=a[i][j]; mini=i; minj=j; } if(a[i][j]>maxa){ maxa=a[i][j]; maxi=i; maxj=j; } } } mina=114514; for(int i=mini;i<=r;){ for(int j=minj;j<=c;){ if(mini==maxi&&minj==maxj||a[i+1][j]<a[i][j]&&a[i-1][j]<a[i][j]&&a[i][j-1]<a[i][j]&&a[i][j+1]<a[i][j]){ cout<<sum; return 0; } if(a[i+1][j]>a[i][j]&&a[i+1][j]<mina){ mina=a[i+1][j]; mini=i+1; } if(a[i-1][j]>a[i][j]&&a[i-1][j]<mina){ mina=a[i-1][j]; mini=i-1; } if(a[i][j+1]>a[i][j]&&a[i][j+1]<mina){ mina=a[i][j+1]; minj=j+1; } if(a[i][j-1]>a[i][j]&&a[i][j-1]<mina){ mina=a[i][j-1]; minj=j-1; } sum++; } } return 0; }

2023/3/25 20:00
加载中...