資料結構 銀行排隊問題之單視窗「夾塞」版

2021-08-28 20:59:06 字數 858 閱讀 1140

題目大意:排隊「夾塞」是引起大家強烈不滿的行為,但是這種現象時常存在。在銀行的單視窗排隊問題中,假設銀行只有1個視窗提供服務,所有顧客按到達時間排成一條長龍。當視窗空閒時,下一位顧客即去該視窗處理事務。此時如果已知第i位顧客與排在後面的第j位顧客是好朋友,並且願意替朋友辦理事務的話,那麼第i位顧客的事務處理時間就是自己的事務加朋友的事務所耗時間的總和。在這種情況下,顧客的等待時間就可能被影響。假設所有人到達銀行時,若沒有空視窗,都會請求排在最前面的朋友幫忙(包括正在視窗接受服務的朋友);當有不止一位朋友請求某位顧客幫忙時,該顧客會根據自己朋友請求的順序來依次處理事務。試編寫程式模擬這種現象,並計算顧客的平均等待時間。

一道模擬題,首先要里明白自己的思路,否則這道題會很難通過。

在這裡說一點自己被坑的地方: 兩人雖然同屬乙個圈子,但可能第乙個人辦完業務後,第二個人還沒有達到,所以就不再考慮第二個人,讓他去老老實實排隊;

下面給出ac**,附帶一些必要的注釋:

#include using namespace std;

const int maxn=10000+10;

struct node

que[maxn];

int main()

}mapnorder;//讀入正常的順序;

for(int i=1;i<=n;i++)

vectorreorder[maxn];//記錄每個圈子裡各個人的先後順序

for(int i=1;i<=m;i++)

int x=number[que[i].name];

for(int j=0;j}

}printf("%.1f",ans*1.0/n);

return 0;

}

7 48 銀行排隊問題之單視窗「夾塞」版

排隊 夾塞 是引起大家強烈不滿的行為,但是這種現象時常存在。在銀行的單視窗排隊問題中,假設銀行只有1個視窗提供服務,所有顧客按到達時間排成一條長龍。當視窗空閒時,下一位顧客即去該視窗處理事務。此時如果已知第i位顧客與排在後面的第j位顧客是好朋友,並且願意替朋友辦理事務的話,那麼第i位顧客的事務處理時...

銀行排隊問題之單視窗「夾塞」版 PTA資料與結構

7 4 銀行排隊問題之單視窗 夾塞 版 30 分 排隊 夾塞 是引起大家強烈不滿的行為,但是這種現象時常存在。在銀行的單視窗排隊問題中,假設銀行只有1個視窗提供服務,所有顧客按到達時間排成一條長龍。當視窗空閒時,下一位顧客即去該視窗處理事務。此時如果已知第 i位顧客與排在後面的第 j位顧客是好朋友,...

7 2 銀行排隊問題之單視窗「夾塞」版 30分

排隊 夾塞 是引起大家強烈不滿的行為,但是這種現象時常存在。在銀行的單視窗排隊問題中,假設銀行只有1個視窗提供服務,所有顧客按到達時間排成一條長龍。當視窗空閒時,下一位顧客即去該視窗處理事務。此時如果已知第i位顧客與排在後面的第j位顧客是好朋友,並且願意替朋友辦理事務的話,那麼第i位顧客的事務處理時...