题意:求逆序对

解题思路:1)树状数组 + 离散化

解题代码:

 1 // File Name: a.cpp
 2 // Author: darkdream
 3 // Created Time: 2014年08月05日 星期二 12时05分09秒
 4
 5 #include<vector>
 6 #include<list>
 7 #include<map>
 8 #include<set>
 9 #include<deque>
10 #include<stack>
11 #include<bitset>
12 #include<algorithm>
13 #include<functional>
14 #include<numeric>
15 #include<utility>
16 #include<sstream>
17 #include<iostream>
18 #include<iomanip>
19 #include<cstdio>
20 #include<cmath>
21 #include<cstdlib>
22 #include<cstring>
23 #include<ctime>
24 #define LL long long
25
26 using namespace std;
27 int n , k ;
28 LL sum = 0 ;
29 int lowbit(int x)
30 {
31     return x&(-x);
32 }
33 struct node{
34     int num, s,rs ;
35 }a[100005];
36 int num[100005];
37 int getsum(int x){
38     int sum = 0 ;
39     while(x >= 1)
40     {
41         sum += num[x];
42         x -= lowbit(x);
43     }
44     return sum ;
45 }
46 void update(int x)
47 {
48     while(x <= n )
49     {
50         num[x] ++ ;
51         x += lowbit(x);
52     }
53     return;
54 }
55 int cmp(node x ,node y )
56 {
57     return x.num < y.num;
58 }
59 int cmp1(node x, node y)
60 {
61     return x.s < y.s;
62 }
63 int main(){
64     while(scanf("%d %d",&n,&k)!= EOF)
65     {
66         memset(num,0,sizeof(num));
67         for(int i =1;i <= n;i ++)
68         {
69             scanf("%d",&a[i].num);
70             a[i].s = i  ;
71         }
72         sort(a+1,a+1+n,cmp);
73         int t = 1;
74         a[1].rs = 1;
75         for(int i = 2;i <= n;i ++)
76         {
77             if(a[i].num == a[i-1].num)
78                 a[i].rs = t ;
79             else {
80                 t++;
81                 a[i].rs = t;
82             }
83         }
84         sort(a+1,a+1+n,cmp1);
85         sum = 0 ;
86         for(int i = 1;i <= n;i ++)
87         {
88             sum += (getsum(n)- getsum(a[i].rs));
89             update(a[i].rs);
90         }
91         if(sum > k)
92           cout << sum-k << endl;
93         else printf("0\n");
94     }
95     return 0;
96 }

View Code

2)归并排序

转载于:https://www.cnblogs.com/zyue/p/3906424.html

HDU4911 Inversion 解题报告相关推荐

  1. uscao 线段树成段更新操作及Lazy思想(POJ3468解题报告)

    线段树成段更新操作及Lazy思想(POJ3468解题报告) 标签: treequerybuildn2cstruct 2011-11-03 20:37 5756人阅读 评论(0) 收藏 举报  分类: ...

  2. 解题报告(十八)数论题目泛做(Codeforces 难度:2000 ~ 3000 + )

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...

  3. 【解题报告系列】超高质量题单 + 题解(ACM / OI)超高质量题解

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我新写的超高质量的题解和代码,题目难度不 ...

  4. 解题报告(三)多项式求值与插值(拉格朗日插值)(ACM / OI)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...

  5. 解题报告(十三)中国剩余定理(ACM / OI)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...

  6. 解题报告(四)生成函数(ACM/ OI)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...

  7. 解题报告(八) prufer 序列与 Cayley 公式(ACM / OI)超高质量题解

    繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量题解和代码,题目难度不一定按照题号排序,我会在每道题后面加上题目难度指数(1∼51 \sim 51∼5),以模板题难度 11 ...

  8. 解题报告(一)E、(BZOJ4589)Hard Nim(博弈论 + FWT)

    繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量题解和代码,题目难度不一定按照题号排序,我会在每道题后面加上题目难度指数(1∼51 \sim 51∼5),以模板题难度 11 ...

  9. 解题报告(五)组合计数(ACM / OI)超高质量题解

    繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量题解和代码,题目难度不一定按照题号排序,我会在每道题后面加上题目难度指数(1∼51 \sim 51∼5),以模板题难度 11 ...

最新文章

  1. Delphi中文件名函数-路径、名称、子目录、驱动器、扩展名
  2. 用python画烟花-python实现烟花小程序
  3. git/github的使用
  4. 共享库中的位置无关代码(PIC)
  5. IOS之Swift5.x开发通讯录实战
  6. C语言学习笔记---指针和数组
  7. 中兴路西藏北路到浦东国际机场路线(ddmap20100114)
  8. Futter基础第10篇: 实现替换路由、返回到根路由
  9. 卡片书签——简洁的 Chrome 书签扩展
  10. Android 存储学习之SQLite数据库的基本操作
  11. 火狐浏览器Firefox怎样设置中文
  12. 数据采集:如何自动化采集数据?
  13. win10 网卡优先级修改
  14. Python数据分析实战01-商铺数据的清洗和存储(附资源文件)
  15. win10系统如何telnet服务器,win10专业版官网系统如何开启telnet服务的办法
  16. Manifest is not valid JSON. Line: 1, column: 1 项目打包报错解决方法
  17. unity 2d贴图
  18. 虚拟号码认证如何开通?
  19. 前端高频面试题-场景题
  20. 拓嘉辰丰:拼多多订单退款流程有哪些?

热门文章

  1. eclipse java工程目录_转载:Eclipse下的java工程目录
  2. iptables 配置后连接不上数据库_Linux服务器配置-VSFTP服务配置(三)
  3. python爬虫cookie池 与ip绑定_Python爬虫:设置Cookie解决网站拦截并爬取蚂蚁短租
  4. 160 - 48 DueList.3
  5. 十一、非规则组织分析及其数学模型——芦席斜纹组织
  6. 容器宿主机数据库_解决Docker容器内访问宿主机MySQL数据库服务器的问题
  7. git远程仓库上传及本地仓库创建
  8. HDU 5730——Shell Necklace
  9. 套接字编程--1(UDP协议编程,端口号,传输层协议,网络字节序)
  10. Linux中wait()函数及waitpid()函数