hdu-2037 今年暑假不AC(贪心)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2037

题意:给出多个节目起始和结束时间,输出最多能看多少个节目

题解:贪心算法题目的关键点在于选择合适的贪心策略,这个题目的贪心策略是每次找结束时间最早的节目,当然节目的开始时间要大于当前时间。

AC代码

#include"algorithm"
using namespace std;
typedef struct Tv{
    int start;
    int end;
};
bool cmp(Tv a,Tv b){
    if(a.end>n&&n!=0){
        Tv tv[105];
        for(int i = 0;i>tv[i].start>>tv[i].end;
        sort(tv,tv+n,cmp);
        int sum = 0;
        int now = 0;
        int i = 0;
        while(i= now){
                now = tv[i].end;
                sum++;
                i++;
            }else{
                i++;
            }
        }
        cout<

小结:找到了对的贪心策略就没问题。

你可能感兴趣的:(算法,hdu,贪心算法,hdu)