标签:algorithm eof net nod test targe ret 时间 span
题目大意:
有n个想看的节目,输入每个节目的开始时间和结束时间,输出最多看多少个节目?
思路:
就是最经典的贪心,按结束时间排序就好。
1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 5 using namespace std; 6 7 int n,ans; 8 9 struct node 10 { 11 int st,ed; 12 }perf[108]; 13 14 int comp(const node &a,const node &b) 15 { 16 return a.ed<b.ed; 17 } 18 19 int main() 20 { 21 scanf("%d",&n); 22 while(n) 23 { 24 memset(perf,0,sizeof(perf)); 25 for(int i=1;i<=n;i++) 26 { 27 scanf("%d%d",&perf[i].st,&perf[i].ed); 28 } 29 sort(perf+1,perf+1+n,comp); 30 ans=0; 31 int tem=0; 32 for(int i=1;i<=n;i++) 33 { 34 if(perf[i].st>=tem) 35 { 36 ans++; 37 tem=perf[i].ed; 38 } 39 } 40 printf("%d\n",ans); 41 scanf("%d",&n); 42 } 43 return 0; 44 }
标签:algorithm eof net nod test targe ret 时间 span
原文地址:https://www.cnblogs.com/LiqgNonqfu/p/9880447.html