本題是貪心算法,還算比較簡單啦。思路是:先找結(jié)束時(shí)間最早的一個(gè)電視節(jié)目。因?yàn)榧偈构?jié)目的結(jié)束時(shí)間變晚,就有可能會阻擋住下一個(gè)節(jié)目的開始時(shí)間,那樣的話最后收看的電視節(jié)目數(shù)不會再多,也就是結(jié)果不會變得更好。 也就是說,我只需要對n個(gè)電視節(jié)目的結(jié)束時(shí)間進(jìn)行遞增排序。如果結(jié)束時(shí)間相同,因?yàn)槲倚枰獙個(gè)電視節(jié)目都進(jìn)行判斷,在這時(shí)我需要讓節(jié)目的開始事件遞增排序。 能夠做到這一條件的有sort函數(shù)。今天好不容易學(xué)會了sort函數(shù)的使用方法,也就是先要include頭文件algorithm,再使用命名空間std。然后自己編一個(gè)小的cmp函數(shù)作為sort的第三個(gè)變量就好啦!
bool cmp(PRogram a,program b){ if(a.end!=b.end) return a.end<b.end; return a.begin<b.begin;}收工!
新聞熱點(diǎn)
疑難解答