簡單題意:給出若干個節目的開始時間和結束時間,問最多能看多少個完整的節目。
解題思路形成過程:存放時間時或存放完時間後,需要對節目的結束時間進行排序。下乙個結束時間最小的且開始時間在當前**節目的結束時間之後的為滿足條件的節目,對所有滿足此條件的節目進行累加和即為最多能看到的節目。
感想:盡量使思路更清晰,更確定,並從而簡化**,更簡單的**更不容易出錯,也更容易進行檢查。
「n=0表示輸入結束,不做處理。」一定要正確處理好,可用類似while(scanf("%d",&n)!=eof&&n)的方式進行處理。
此外,一定要看清是輸入一組資料還是多組資料!
**:
#include#include#include#includeusing namespace std;
struct tv
;bool cmp(tv a,tv b)
sort(s.begin(),s.end(),cmp);//注意sort的使用。
int ff=s[0].en;
for(int i=1;i=ff) //是大於等於,而非大於。
}cout
}return 0;
}
貪心演算法 Problem E
貪心演算法 problem e 題意 有多個電視節目,每個節目有不同的開始時間和結束時間。在不衝突的情況下求能完整 的最多節目數。解題思路 模擬於課上例題,定義結構體,包含開始時間和結束時間。將輸入的資料按結束時間公升序排列。定義能看到的節目數和起始時間都預設為0。將第乙個節目放入後,把時間改為第乙...
貪心演算法problem E(編號1004)
一.簡單題意 這是乙個與活動安排問題相類似的題目,大體意思就是安排看電視節目,然後輸出我們能完整的看到電視節目的個數。二.解題思路形成過程 因為這是乙個與活動安排問題相類似的題目,所以我先看了一下老師給的貪心演算法的課件,先建立乙個struct來儲存節目的開始和結束時間,再建立乙個struct陣列,...
經典貪心演算法 貪心演算法概述
貪心演算法具有最優子問題結構,它的特點是 短視 每次選擇對當前局面最有利的決策,來一步步獲得最優解。我個人認為,貪心不是乙個具體的方法,而是一類方法,貪心演算法的關鍵不在於想到,而在於正確性的證明。要證明乙個貪心演算法是正確的,需要證明我們可以把乙個最優解逐步轉化為我們用貪心演算法所得到的解,而解不...