洛谷编译错误怎么办(在devc++和codeblocks上都能运行)

洛谷编译错误怎么办(在devc++和codeblocks上都能运行)
洛谷P1443 马的遍历

img

我的代码

#include <bits/stdc++.h>
using namespace std;
int n,m,x0,y0;
int dir[8][2]={{-2,1},{-1,2},{1,2},{2,1},{2,-1},{1,-2},{-1,-2},{-2,-1}};
int ans[405][405],vis[405][405];
struct point
{
    int x,y,step;
};
queue<point>q;
int main()
{
    memset(ans,-1,sizeof ans);
    scanf("%d%d%d%d",&n,&m,&x0,&y0);
    point a;
    a.x=x0;
    a.y=y0;
    a.step=0;
    q.push(a);
    ans[x0][y0]=0;
    vis[x0][y0]=1;
    while(!q.empty())
    {
        int x=q.front().x;
        int y=q.front().y;
        for(int i=0;i<=7;i++)
        {
            int xx=x+dir[i][0];
            int yy=y+dir[i][1];
            if(xx>=1&&xx<=n&&yy>=1&&yy<=m&&vis[xx][yy]==0)
            {
                vis[xx][yy]=1;
                point b;
                b.x=xx;
                b.y=yy;
                b.step=q.front().step+1;
                ans[xx][yy]=b.step;
                q.push(b);
            }
        }
        q.pop();
    }
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=m;j++)
        {
            printf("%-5d",ans[i][j]);
        }
        printf("\n");
    }
}


输出结果

img

洛谷编译报错

img

头一回遇到这种情况,把万能头换了也不好使,我该怎么办啊,QAQ

别用万能头,别using namespace std试试