ZCMU1729 C queue的應用 貪心

2021-08-29 00:09:26 字數 742 閱讀 8116

輸入包含多組測試資料。每組測試資料的第一行有三個正整數m,t,r(1 <= m, t, r <= 300)。第二行有m個整數wi(1 <= wi <= 300),代表每個鬼出現的時間。所有的wi都不相同並且從小到大排序。

對於每組測試資料,輸出一行,如果可以滿足條件則輸出最少需要的蠟燭數,否則輸出「-1」。

1 8 3 10

2 10 1

5 81 1 3

10 3

1 -1貪心: 點燃的蠟燭要盡量的少並且滿足條件,那麼點蠟燭的時機應該在鬼出現時的前r秒

不滿足條件的情況如下:

a.若蠟燭的燃燒時間+(第乙個鬼出現的時間-r)《第乙個鬼出現的時間,那麼肯定不滿足條件

b.在每個鬼出現時間的前r秒中,蠟燭的燃燒時間支撐不到鬼出現

#include#include#includeusing namespace std;

#define max 400

int solve(int *ghost,int n,int time,int r)

//num是點燃蠟燭的最佳時間

int num=ghost[i]-r+candle.size();

while(candle.size()!=r)

}return re;

}int main()

printf("%d\n",solve(ghost,n,time,r));

}return 0;

}

C Queue的簡單試用

新建乙個wpf專案,測試c 的queue類的簡單使用。前台準備兩個按鈕 mainwindow.xaml verticalalignment center content 加乙個元素 click add content 檢視佇列 click show stackpanel 後台 mainwindow ...

C queue 和 deque的區別

queue 例程1 queue沒找到迭代器 deque deque是雙向佇列double ended queue can be accessed with random access iterator deque是雙端佇列,是可以在兩端擴充套件和收縮的連續容器。一般deque的實現是基於某種形式的動...

c queue中的常用函式

在c 中只要 include即可使用佇列類,其中在面試或筆試中常用的成員函式如下 按照最常用到不常用的順序 push pop size empty front back 接下來逐一舉例說明 push 佇列中由於是先進先出,push即在隊尾插入乙個元素,如 queue q q.push hello w...