给大家推荐个靠谱的公众号程序员探索之路,大家一起加油
此题和南阳oj 动态规划 心急的C小加 一摸一样http://blog.csdn.net/yueloveme/article/details/46943523
#include<stdio.h>
#include<stdlib.h>
struct node
{
int l,w;
}s[10001];
int cmp(const void *a,const void *b)
{
struct node *c=(node *)a;
struct node *d=(node *)b;
if(c->l!=d->l)
return c->l-d->l;
else
return c->w-d->w;
}
int dp[10001];
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
int n,t,sum=0;
scanf("%d",&n);
for(int i=0;i<n;i++)
scanf("%d%d",&s[i].l,&s[i].w);
qsort(s,n,sizeof(s[0]),cmp);//结构体排序 长度从小到大 长度相等时 按照从细到粗排序
for(int i=0;i<n;i++)
{
if(s[i].w)//当不为0时
{
sum++;
t=s[i].w;
for(int j=i+1;j<n;j++)
{
if(s[j].w>=t)//大于等于就是不用计算时间的
{
t=s[j].w;
s[j].w=0;
}
}
}
}
printf("%d\n",sum);
}
return 0;
}