您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“如何編寫(xiě)代碼實(shí)現(xiàn)外賣店優(yōu)先級(jí)效果”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“如何編寫(xiě)代碼實(shí)現(xiàn)外賣店優(yōu)先級(jí)效果”吧!
#include<iostream> #include<cstdio> #include<algorithm> #include<cstring> #define x first #define y second using namespace std; typedef pair<int, int> PII; const int N=100010; int score[N];//優(yōu)先級(jí) int last[N]; bool st[N];//是否在緩存 int n,m,T; PII order[N];//訂單二元組 int main(){ scanf("%d%d%d",&n,&m,&T); for(int i=0;i<m;i++) scanf("%d%d", &order[i].x, &order[i].y); sort(order,order+m); //枚舉每個(gè)訂單 for(int i=0;i<m;i++){ int j=i; while(j<m && order[i]==order[j]) j++; int t=order[i].x,id=order[i].y,cnt=j-i;//時(shí)間 id 個(gè)數(shù) i=j-1; score[id] -= t-last[id]-1; //最低減到0 if(score[id]<0) score[id]=0; if(score[id]<=3) st[id]=false;//以上處理的是t時(shí)刻之前的信息 score[id]+=2*cnt; if(score[id]>5) st[id]=true; last[id]=t; } for(int i=1;i<=n;i++){ if(last[i]<T){ score[i]-=T-last[i]; if(score[i]<=3) st[i]=false; } } int res=0; for(int i=1;i<=n;i++) res+=st[i]; printf("%d\n",res); return 0; }
到此,相信大家對(duì)“如何編寫(xiě)代碼實(shí)現(xiàn)外賣店優(yōu)先級(jí)效果”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。