@[ONicklgzh](/user/1132685)
1,应该是printf(ans)
2,输出答案时不应该从1~ans吧
by TCY1234567 @ 2023-12-03 08:21:41
@[ONicklgzh](/user/1132685)
还有x1,y1,x2,y2输入顺序不对
by TCY1234567 @ 2023-12-03 08:24:52
@[ONicklgzh](/user/1132685)
```cpp
#include <bits/stdc++.h>
using namespace std;
int a[1005][1005];
int ansx[1005*1005],ansy[1005*1005];
int main(){
int m,n,/*i,j/,*/T,t,x1,x2,y1,y2,ans=0;
scanf("%d%d",&n,&m);
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
scanf("%d",&a[i][j]);
}
}
scanf("%d",&T);
for(int i=1;i<=T;i++){
scanf("%d %d %d %d",&x1,&y1,&x2,&y2);
t=a[x1][y1];
a[x1][y1]=a[x2][y2];
a[x2][y2]=t;
}//swap(a[x1][x2],a[x2][y2])
int cnt = 0;
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]){
ans++;
ansx[cnt]=i;
ansy[cnt]=j;
cnt++;
}
}
}
printf("%d\n",ans);
for(int i=0;i<=cnt;i++){
if(ansx[i]!=0&&ansy[i]!=0)
printf("%d %d\n",ansx[i],ansy[i]);
}
return 0;
}
by TCY1234567 @ 2023-12-03 10:24:26
@[TCY1234567](/user/968688) 看看我的谢谢大佬
```
#include<iostream>
#include<cstring>
using namespace std;
//struct node{
// int hang,line,power;
//};
int n,m;
int u,v,w,u1,v1;
int a[1050][1050];
int t;
int num;
struct node{
int hang,line;
}node1[1000005];
int h;
int read()
{
int s=0;
char ch=getchar();
while(ch>='0'&&ch<='9')
{
s=s*10+ch-'0';
ch=getchar();
}
return s;
}
int main()
{
n=read(),m=read();
memset(a,0,sizeof a);
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
w=read();
a[i][j]=w;
}
}
t=read();
while(t--)
{
u=read(),v=read(),u1=read(),v1=read();
swap(a[u][v],a[u1][v1]);
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
h=a[i][j];
if(h>a[i-1][j]&&h>a[i+1][j]&&h>a[i][j-1]&&h>a[i][j+1])
{
num++;
node1[num]={i,j};
}
}
}
cout<<num;
cout<<endl;
for(int i=1;i<=num;i++)
{
cout<<node1[i].hang<<" "<<node1[i].line<<endl;
}
return 0;
}
```
by 呆呆的她啊 @ 2023-12-09 22:22:21