美文网首页
杭电ACM-2020

杭电ACM-2020

作者: 1QzUPm_09F | 来源:发表于2017-01-22 18:40 被阅读0次

    题目:

    2020题

    代码:

    #include<stdio.h>
    #include<algorithm>
    #include<string.h>
    #include<stdlib.h>
    using namespace std;
    struct st
    {
        int num;
        int origin;
    }b[1000];
    bool cmp(st a,st b)
    {
        return a.num>b.num;
    }
    int main()
    {
        int n,a[1000],i;
        while(~scanf("%d",&n))
        {
            if(n==0)
                return 0;
            for(i=0;i<n;i++)
            {
                scanf("%d",&a[i]);
                b[i].origin=a[i];
                if(a[i]<0)
                {
                    b[i].num=0-a[i];
                }
                else
                {
                    b[i].num=a[i];
                }
            }
            sort(b,b+n,cmp);
            for(i=0;i<n;i++)
            {
                if(i!=0)
                    printf(" ");
                printf("%d",b[i].origin);
            }
            printf("\n");
        }
        return 0;
    }
    

    注意:此题为结构体排序 对 绝对值数列的排序的典型题目!!!

    相关文章

      网友评论

          本文标题:杭电ACM-2020

          本文链接:https://www.haomeiwen.com/subject/tpyobttx.html