HDU 2390

来源:互联网 发布:淘宝店推广预算计划书 编辑:程序博客网 时间:2024/06/02 20:21

我发现贪心的典型题目就是活动安排,这是一道入门贪心!#include <iostream>#include <cstdio>#include <cstring>#include <string>#include <algorithm>#include <cstdlib>using namespace std;const int maxn=50005;int m,t;struct node{    int day;    int start;    int end;} p[maxn];int cmp(node a,node b){    if(a.day==b.day)    {        return a.end<b.end;    }    else        return a.day<b.day;}int main(){    int i;    int tcase=0;    scanf("%d",&t);    while(t--)    {        scanf("%d",&m);        for(i=0; i<m; i++)        {            scanf("%d%d%d",&p[i].day,&p[i].start,&p[i].end);        }        sort(p,p+m,cmp);        int temp=0;        int sum=1;//注意这里第一个        int k=0;        for(i=1; i<m; i++)        {            if(p[i].day==p[k].day&&p[i].start>=p[temp].end)//这里要分开,同是一天的就用贪心            {                temp=i;                sum++;            }            if(p[i].day!=p[k].day)            {                k=i;                temp=i;                sum++;            }        }        printf("Scenario #");        printf("%d:\n",++tcase);        printf("%d\n\n",sum);//这里的格式问题也必须注意,就是每一个case后面都有一个换行!    }    return 0;}

原创粉丝点击