亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

貪心——今年暑假不AC(hdu2037)

標簽:
算法

题目链接:

http://acm.hdu.edu.cn/showproblem.php?pid=2037

题目描述:

在一天的时间里,尽可能的看最多的完整节目

输入数据包含多个测试实例,每个测试实例的第一行只有一个整数n(n<=100),表示你喜欢看的节目的总数,然后是n行数据,每行包括两个数据Ti_s,Ti_e (1<=i<=n),分别表示第i

个节目的开始和结束时间,为了简化问题,每个时间都用一个正整数表示。n=0表示输入结束,不做处理。


解题思路:

这是一个很典型的贪心问题,不管节目有多少,持续时间多长,第一次看的节目一定是最早结束的,然后再在剩余的节目里选出满足(开始时间>第一次选取的节目结束时间)

这个条件里最早结束的节目,以此类推。


#include <stdio.h>int main(){int i,j,k,n,a[101],b[101],l,m[101],p,o,t,d;while(scanf("%d",&n)!=EOF&&n!=0){for(i=0;i<n;i++){scanf("%d%d",&a[i],&b[i]);}for (i=1; i<n; i++){for (j=0; j<n-i; j++){if (b[j]>b[j+1]){				k=a[j];l=b[j];a[j]=a[j+1];b[j]=b[j+1];a[j+1]=k;b[j+1]=l;}}}int A[101]={0};for(i=0;i<n;i++){d=i-1;int p=0;while(d>=0){if(a[i]>=b[d]){if(p<A[d])p=A[d];}d--;}A[i]=p+1;	}				int t=A[0];for(i=0;i<n;i++)if(t<A[i])t=A[i];printf("%d\n",t);}return 0;}

 


點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消