求查错

P1056 [NOIP2008 普及组] 排座椅

算法可能我没太看懂 不过我的代码很好理解 ```cpp #include<cstdio> #include<iostream> #include<algorithm> using namespace std; struct node { int nu,lct; }s1[2005],s2[2005]; int len,len2; bool cmp(node x,node y) { return x.nu>y.nu; } int main() { int m,n,k,l,d,i; scanf("%d%d%d%d%d",&m,&n,&k,&l,&d); for(i=1;i<=d;i++) { int x,y,xx,yy; scanf("%d%d%d%d",&y,&x,&yy,&xx); if(y==yy) s1[min(x,xx)].nu++,s1[min(x,xx)].lct=min(x,xx); if(x==xx) s2[min(y,yy)].nu++,s2[min(y,yy)].lct=min(y,yy); } sort(s1+1,s1+1+n,cmp); sort(s2+1,s2+1+m,cmp); int a[2005],q=0; for(i=1;i<=k;i++) a[++q]=s2[i].lct; sort(a+1,a+1+q); for(i=1;i<=k;i++) { if(i==1) printf("%d",a[1]); else printf(" %d",a[i]); } q=0; for(i=1;i<=l;i++) a[++q]=s1[i].lct; sort(a+1,a+1+q); for(i=1;i<=l;i++) { if(i==1) printf("\n%d",a[1]); else printf(" %d",a[i]); } return 0; } ```
by resftlmuttmotw @ 2018-11-01 23:31:34


|