poj2376解題報告

2021-06-28 20:14:10 字數 421 閱讀 7785

給定n個小區間以及區間起點終點,求能用它們覆蓋區間[1,t]的最小組合。

也是看了別人的思路我才做出來的,**比較精簡。

思路:先把資料排序。把time設為當前起點,最開始的起點為1,所以尋找開始起點為1的裡面結束時間最晚的那個資料+1當作下乙個起點time。

之後遍歷,尋找<=time裡面結束時間最晚的那個資料。重複上述步驟。用g++做超時了,用c++的話勉強過關,900多ms。

#include#includeusing namespace std;

int main()

if (max == 0)

if (cnt>n)

time = max + 1;

cnt++;

} printf("%d\n", cnt);

}

POJ 2376 簡單的區間貪心問題

簡單翻譯 給你乙個長度為t的時間區間,區間從1開始,每乙個時間點都需要有奶牛在工作,有n頭奶牛,給你每個奶牛的工作區間,讓你從這些奶牛中選一些奶牛,讓其覆蓋t這個時間區間,有兩個條件 1.每個時間點都需要有奶牛工作 2.盡可能少的使用奶牛 分析 我們可以位元組把題目中給定的條件就想象成乙個乙個的區間...

poj 2376 選擇工作區間問題 貪心演算法

題意 給一些工作區間,如何選取最小的工作數量,覆蓋 1,t 的工作時長 一開始的思路,當然也是錯誤的思路 解題思路 標記起點,當然對提供的工作區間,按開始的時間從小到大排序。對能夠覆蓋起點 即可選的工作區域 選擇結束時間最晚的 即工作時長最長的 更新起點 中的小技巧 主要針對第二個解題思路 可選區域...

poj解題報告 1328

不得不說,這題是讓我飽受折磨,畢竟第一次做貪心演算法,而且wa了好多次,幸好有學長的幫助,最終找到了問題所在,是在快排上是問題,double高位不可向int低位轉換,由於一開始強制轉換導致雖然樣例和其他的測試資料過了,但還是wa,現在改完了就對了,附上ac ps 這題通過率是22 真心不簡單 如下 ...