求调,9WA,最后一个AC
查看原帖
求调,9WA,最后一个AC
238237
Starry_777楼主2025/7/21 13:58
#include <bits/stdc++.h>
using namespace std;
int n,m;
int num[5005][5005];
int cp[5005][5005];

void sp(int p_x,int p_y,int len,int sw)
{
    for(int i=1;i<=n;++i)
        for(int j=1;j<=n;++j)
            cp[i][j]=num[i][j];

    int i=p_x-len;
    int j=p_y+len;

    int o,p,f,l;
    if(sw==0)
    {
        o=p_y-len;
        f=1;
        l=1;
    }
    else
    {
        o=p_y+len;
        f=-1;
        l=-1;
    }

    while(i<=p_x+len)
    {
        j=p_y+len;
        if(sw==0) p=p_x-len;
        else p=p_x+len;
        while(j>=p_y-len)
        {
            num[o][p]=cp[j][i];
            j--;
            p+=l;
        }
        i++;
        o+=f;
    }
}
int main()
{
    cin>>n>>m;
    for(int i=1;i<=n;++i)
        for(int j=1;j<=n;++j)
            num[i][j]=j+(i-1)*n;
    for(int i=1;i<=m;++i)
    {
        int x,y,r,z;
        cin>>x>>y>>r>>z;
        sp(x,y,r,z);
    }
    for(int i=1;i<=n;++i)
    {
        for(int j=1;j<=n;++j)
            cout<<num[i][j]<<" "; 
        cout<<endl;
    }
    return 0;
}

大佬们看看,1~9WA,10AC 样例跑过了,也不知道出什么问题了

2025/7/21 13:58
加载中...