0分求助,样例未过

P1056 [NOIP2008 普及组] 排座椅

``` #include<bits/stdc++.h> using namespace std; int m,n,k,l,d; int x,y,xx,yy; struct lie{ int need; int y; }s2[10001]; struct hang{ int need; int x; }s1[10001]; bool cmp(hang a,hang b){ return a.need>b.need; } bool gmp(lie a,lie b){ return a.need>b.need; } bool kmp(hang a,hang b){ return a.x<b.x; } bool kkmp(lie a,lie b){ return a.y<b.y; } int main(){ // freopen("in.txt","r",stdin); // freopen("out.txt","w",stdout); cin>>m>>n>>k>>l>>d; for(int i=1;i<=d;i++){ cin>>x>>y>>xx>>yy; if(x==xx){ s2[min(yy,y)].need ++; s2[min(yy,y)].y =min(yy,y); }else{ s1[min(xx,x)].need ++; s1[min(xx,x)].x =min(xx,x); } } sort(s1+1,s1+m+1,cmp); sort(s2+1,s2+n+1,gmp); sort(s1+1,s1+k+1,kmp); sort(s2+1,s2+l+1,kkmp); for(int i=1;i<=k;i++){ if(i==1) cout<<s1[i].x; else cout<<" "<<s1[i].x; } cout<<endl; for(int i=1;i<=l;i++){ if(i==1)cout<<s2[i].y; else cout<<" "<<s2[i].y; } } ```
by canwen2 @ 2024-05-02 11:11:28


|