首页新闻找找看学习计划

求大佬过目!!!!!!!!解答!!!!!!!

0
悬赏园豆:20 [待解决问题]

P1056 排座椅

include <stdio.h>

include <ctype.h>

include <string.h>

include <math.h>

define N 200

struct ff
{
int x,y,p,q;
}aa[2001];
int main()
{
int m,n,k,l,d,i,t=0,u=0,j,as,ax;
int hang[5000]={0},lie[5000]={0};
scanf("%d%d%d%d%d",&m,&n,&k,&l,&d);
for(i=0;i<d;i++)
{
scanf("%d%d%d%d",&aa[i].x,&aa[i].y,&aa[i].p,&aa[i].q);
}
for(i=0;i<d;i++)
{
if(aa[i].x==aa[i].p&&(fabs(aa[i].y-aa[i].q)==1))
{
lie[u++]=(aa[i].y<aa[i].q?aa[i].y:aa[i].q);
}
if(aa[i].y==aa[i].q&&(aa[i].x==((aa[i].p)-1)||aa[i].x==((aa[i].p)+1)))
{
hang[t++]=(aa[i].x<aa[i].p?aa[i].x:aa[i].p);
}
}
for(i=0;i<t-1;i++)
{
for(j=i+1;j<t;j++)
{
if(hang[i]>hang[j])
{
as=hang[i];
hang[i]=hang[j];
hang[j]=as;
}
}
}
for(i=0;i<t-1;i++)
{
printf("%d ",hang[i]);
}
printf("%d\n",hang[i]);
for(i=0;i<u-1;i++)
{
for(j=i+1;j<u;j++)
{
if(lie[i]>lie[j])
{
ax=lie[i];
lie[i]=lie[j];
lie[j]=ax;
}
}
}
for(j=0;j<u-1;j++)
{
printf("%d ",lie[j]);
}
printf("%d\n",lie[j]);
}
求看!大佬!!!!!
为啥数组越界!!!!

防弹衣的主页 防弹衣 | 初学一级 | 园豆:182
提问于:2019-02-24 22:42

把题目贴出来。

Shendu.CC 8个月前
< >
分享
所有回答(1)
1

先帮你 排版一下

看看题目要求的输入数据范围是多少?

大兄弟,你的代码不是RE 是Wrong Answer

还有题目要求输出 K和L ,而你输出的是U,T ,题目规定了K个横线,L个竖线进行划分,你不能超过它们也不能少于它们

nclude <stdio.h>
include <ctype.h>
include <string.h>
include <math.h>
define N 200
struct ff
{
    int x,y,p,q;
}aa[2001];
int main()
{
    int m,n,k,l,d,i,t=0,u=0,j,as,ax;
    int hang[5000]={0},lie[5000]={0};
    scanf("%d%d%d%d%d",&m,&n,&k,&l,&d);
    for(i=0;i<d;i++)
    {
        scanf("%d%d%d%d",&aa[i].x,&aa[i].y,&aa[i].p,&aa[i].q);
    }
    for(i=0;i<d;i++)
    {
        if(aa[i].x==aa[i].p&&(fabs(aa[i].y-aa[i].q)==1))
        {
            lie[u++]=(aa[i].y<aa[i].q?aa[i].y:aa[i].q);
        }
        if(aa[i].y==aa[i].q&&(aa[i].x==((aa[i].p)-1)||aa[i].x==((aa[i].p)+1)))
        {
            hang[t++]=(aa[i].x<aa[i].p?aa[i].x:aa[i].p);
        }
    }
    for(i=0;i<t-1;i++)
    {
        for(j=i+1;j<t;j++)
        {
            if(hang[i]>hang[j])
            {
                as=hang[i];
                hang[i]=hang[j];
                hang[j]=as;
            }
        }
    }
    for(i=0;i<t-1;i++)
    {
        printf("%d ",hang[i]);
    }
    printf("%d\n",hang[i]);
    for(i=0;i<u-1;i++)
    {
        for(j=i+1;j<u;j++)
        {
            if(lie[i]>lie[j])
            {
                ax=lie[i];
                lie[i]=lie[j];
                lie[j]=ax;
            }
        }
    }
    for(j=0;j<u-1;j++)
    {
        printf("%d ",lie[j]);
    }
    printf("%d\n",lie[j]);
}
Shendu.CC | 园豆:1811 (小虾三级) | 2019-02-25 10:48

大佬好强啊!!!!!!!!!!!

支持(0) 反对(0) 古宇 | 园豆:272 (菜鸟二级) | 2019-02-25 11:56
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册