• Japan 树状数组加逆序数...


    哎~又有学到知识...不过是以翘课被抓为代价的...咕~~(╯﹏╰)bView Code
     
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    __int64 s;
    int m;
    __int64 b[10050];
    struct node 
    {
        int x;
        int y;
    };
    node a[1000005];
    int cmp(const void *a,const void *b)
    {
        if (  ( *(node*)a ).x ==( * ( node* ) b ).x) 
            return ( * (node* ) a ).y-( *(node*) b ).y;
        return (*(node*)a).x-(*(node*)b).x;
    }
    int lowbit(int x)
    {
        return x&(-x);
    }
    void inc(int x)
    {
        while (x<=m)
        {
            b[x]+=1;
            x+=lowbit(x);
        }
    }
    __int64 sum(int x)
    {
        __int64 sum=0;
        while (x>0)
        {
            sum+=b[x];
            x-=lowbit(x);
        }
        return sum;
    }
    int main()
    {
        int T,i,n,k,t=1;
        scanf("%d",&T);
        while (T--)
        {
            s=0;
            memset(b,0,sizeof(b));
            memset(a,0,sizeof(a));
            scanf("%d%d%d",&n,&m,&k);
            for (i=0;i<k;i++)
            {
                scanf("%d%d",&a[i].x,&a[i].y);
            }
            qsort(a,k,sizeof(a[0]),cmp);
            for (i=0;i<k;i++)
            {
                s+=i-sum(a[i].y);
                inc(a[i].y);
            }
            printf("Test case %d: %I64d\n",t++,s);
        }
    当你试图了解你的祖国时,你已踏上了犯罪的路程。
  • 相关阅读:
    htmlunit 基础01
    @Transactional 事务失效问题
    SQL优化总结
    单点登录实现过程
    常见的mybatis对应关系
    命名规范(Oracle数据库)
    12-5 作为可叠加修改的特质
    12-4 Ordered特质
    10 绘制螺旋示例
    10-6 参数化字段
  • 原文地址:https://www.cnblogs.com/modiz/p/2975247.html
Copyright © 2020-2023  润新知