40pts求助
查看原帖
40pts求助
1029225
314zbl楼主2024/12/31 19:12
#include<bits/stdc++.h>
using namespace std;
int n,m,t,a1,a2,b1,b2,a[1009][1009],x[1009],y[1009],cnt=1;
int main(){
	//原始地形
	cin>>n>>m;
	for(int i=1;i<=n;i++)
		for(int j=1;j<=m;j++)
			cin>>a[i][j];
	//地理变迁
	cin>>t;
	for(int i=1;i<=t;i++){
		cin>>a1>>a2>>b1>>b2;
		swap(a[a1][a2],a[b1][b2]);
	}
	//判定山峰
	for(int i=1;i<=n;i++)
		for(int j=1;j<=m;j++)
			if(a[i][j]>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])
				x[cnt]=i,y[cnt]=j,cnt++;
	/*
	不知道为什么 这个代码会输出一个0 0 
	cout<<cnt<<endl;
	for(int i=1;i<=cnt;i++)
		cout<<x[i]<<" "<<y[i]<<endl;
	*/
	cout<<cnt-1<<endl;
	for(int i=1;i<=cnt;i++)
		if(x[i])
			cout<<x[i]<<" "<<y[i]<<endl;
	return 0;
}

玄关求助

2024/12/31 19:12
加载中...