#include <bits/stdc++.h>
using namespace std;
int n,m,a[1005][1005],T;
vector<pair<int,int>> v;
bool p(int x,int y){
if(x>1&&a[x][y]<=a[x-1][y]) return 0;
if(x<n&&a[x][y]<=a[x+1][y]) return 0;
if(y>1&&a[x][y]<=a[x][y-1]) return 0;
if(y<m&&a[x][y]<=a[x][y+1]) return 0;
return 1;
}
int main(){
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
cin>>n>>m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++) cin>>a[i][j];
cin>>T;
while(T--){
int x1,y1,x2,y2;
cin>>x1>>y1>>x2>>y2;
swap(a[x1][y1],a[x2][y2]);
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++)
if(p(i,j)) v.emplace_back(i,j);
}
cout<<v.size()<<'\n';
for(auto& x:v)cout<<x.first<<' '<<x.second<<'\n';
}
如上,我这个代码样例1是过不了的,但是交上去却AC了。