欧美1区2区3区激情无套,两个女人互添下身视频在线观看,久久av无码精品人妻系列,久久精品噜噜噜成人,末发育娇小性色xxxx

題解 | #排座椅#

排座椅

https://ac.nowcoder.com/acm/problem/16618

這道題用貪心,我們先用結(jié)構(gòu)體用來記錄哪一行(pos)或列(pos)需要隔離,這條隔離帶隔離了多少個(gè)(num)

1、先是通過給出兩同學(xué)的坐標(biāo)判斷是隔離行還是隔離帶,如果x,p相同說明在同一行,那么要隔離列min(y,q)列,反之隔離min(x,p)行。

2、當(dāng)完成1數(shù)據(jù)記錄后,通過排序把隔離人數(shù)最多的行和列重大到小排序。

3、排完序后因?yàn)轭}目需要我們輸出的是他的索引,既pos,所以我們再排序通過pos從小到大排,而且范圍是zong+1,zong+1+l(因?yàn)樗f設(shè)置l條縱向)heng同樣道理,這樣我們就可以得到最終結(jié)果

4、按條件從a[1]輸出到a[l]即可,b同理

```#include<bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
struct ty{
    int pos,num;
}heng[1200],zong[1200];

int cmp1(ty x,ty y){
    return x.num > y.num;
}
int cmp2(ty x,ty y){
    return x.pos < y.pos;
}
int main(){
    IOS;
    int m,n,k,l,d; //m行n列,有k,l條隔離帶,d個(gè)同學(xué)
    cin>>m>>n>>k>>l>>d;
    for(int i=1;i<=max(n,m);i++){
        heng[i].pos = i;
        zong[i].pos = i;
    }
    while(d--){
        int x,y,p,q;
        cin>>x>>y>>p>>q;
        if(x==p){
            zong[min(y,q)].num++;
        }else{
            heng[min(x,p)].num++;
        }
    }
    sort(zong+1,zong+1+n,cmp1);
    sort(heng+1,heng+1+m,cmp1);
    
    sort(zong+1,zong+1+l,cmp2);
    sort(heng+1,heng+1+k,cmp2);
    for(int i=1;i<=k;i++){
        cout<<heng[i].pos<<" ";
    }cout<<endl;
    for(int i=1;i<=l;i++){
        cout<<zong[i].pos<<" ";
    }cout<<endl;
}
全部評論

相關(guān)推薦

wuwuwuoow:1.簡歷字體有些怪怪的,用啥寫的? 2.Redis 一主二從為什么能解決雙寫一致性? 3.樂觀鎖指的是 SQL 層面的庫存判斷?比如 stock > 0。個(gè)人認(rèn)為這種不算樂觀鎖,更像是樂觀鎖的思想,寫 SQL 避免不了悲觀鎖的 4.獎(jiǎng)項(xiàng)證書如果不是 ACM,說實(shí)話沒什么必要寫 5.邏輯過期時(shí)間為什么能解決緩存擊穿問題?邏輯過期指的是什么 其實(shí)也沒什么多大要改的。海投吧
點(diǎn)贊 評論 收藏
分享
評論
點(diǎn)贊
收藏
分享

創(chuàng)作者周榜

更多
??途W(wǎng)
??推髽I(yè)服務(wù)