Qsort对二位数组的排序

作者在 2015-10-12 15:55:14 发布以下内容
#include <stdio.h>


#include <stdlib.h>

int cmp(const void *a,const void *b)

{

    return((int*)a)[1]-((int*)b)[1];

}

int main()

{

    int t,n,i,x1;

    int m[1005][2];

    scanf("%d",&t);

    for(i=1;i<=t;i++)

    {

        scanf("%d",&n);

        for(x1=0;x1<n;x1++)

        {

            scanf("%d%d",&m[x1][0],&m[x1][1]);

        }

        qsort(m,n,sizeof(m[0]),cmp);

        /*for(x1=0;x1<n;x1++)

        {

            printf("%d %d\n",m[x1][0],m[x1][1]);

        }*/

        int x2=0,count=1;

        for(x1=0;x1<n;x1++)

        {

            if(m[x1][0]>=m[x2][1])

            {

                x2=x1;

                count++;

            }

        }

        printf("Case %d: %d\n",i,count);

    }

}

学习记录 | 阅读 1065 次
文章评论,共0条
游客请输入验证码
文章归档
最新评论