标签:des style blog http color 使用 os io
#include <cstdio> #include <cstring> #include <algorithm> using namespace std; const int maxn = 10100; struct Table{ int l,r; bool operator < (const Table &rhs) const{ return r < rhs.r; } }table[maxn]; //感觉上面的这种定义结构体同时还重新定义了大小比较的排序方法的这个效果自己要赶快学会,用处非常的大 int main(){ int kase,n; scanf("%d",&kase); while(kase--){ scanf("%d",&n); for(int i = 0;i < n;i++){ scanf("%d%d",&table[i].l,&table[i].r); } sort(table,table+n); int ans = 0,r = -1; for(int i = 0;i < n;i++){ if(r < table[i].l){ ans++; r = table[i].r; } } printf("%d\n",ans); } return 0; }
同样是最简单的贪心题,下面有一个几乎一样的实例,希望以后能够将这样一类问题好好的处理好——(建议是在使用贪心的过程中遇到超时等等情况,要求使用二分进行尝试)
hdu2037:点击这里
#include <iostream> #include <algorithm> #include <cstdio> using namespace std; const int maxn = 24; struct TV{ int l,r; bool operator < (const TV &rhs) const{ return r < rhs.r; } }table[maxn]; int main() { int n; while(cin>>n&&n){ for(int i = 0;i < n;i++){ scanf("%d%d",&table[i].l,&table[i].r); } sort(table,table+n); int ans = 0,r = -1; for(int i = 0;i < n;i++){ if(r <= table[i].l){ ans++; r = table[i].r; //cout<<"table[i].l"<<table[i].l<<"table[i].r"<<table[i].r<<endl; } } printf("%d\n",ans); } return 0; }
标签:des style blog http color 使用 os io
原文地址:http://www.cnblogs.com/tianxia2s/p/3905011.html