树状数组应用-冒泡排序的交换次数
来源:互联网 发布:c语言可以做什么软件 编辑:程序博客网 时间:2024/05/20 04:12
树状数组应用-冒泡排序的交换次数,模板应用。
#include <iostream>using namespace std;typedef long long ll;const int maxn=1e5+10;int n,a[maxn];int sum(int i){ int s=0; while(i>0) { s+=a[i]; i-=i&-i; } return s;}void add(int i,int x){ while(i<=n) { a[i]+=x; i+=i&-i; }}void solve(){ ll ans=0; for(int j=0;j<n;j++) { ans+=j-sum(a[j]);//把j-(BIT查询得到的前a(j)项的和)加到答案中 add(a[j],1);//把BIT中a(j)位置上的值加1 } printf("%lld\n",ans);}
阅读全文
0 0
- 树状数组应用-冒泡排序的交换次数
- 树状数组------冒泡排序的交换次数
- 冒泡排序(优化版)的比较次数和交换数字次数 逆序数+树状数组
- 冒泡排序的交换次数
- 冒泡排序的交换次数
- 冒泡排序中数据交换的次数
- 冒泡排序中数据交换的次数
- 冒泡排序中数据交换的次数
- 冒泡排序中数据交换的次数
- 冒泡排序中数据交换的次数
- 冒泡排序中数据交换的次数
- 冒泡排序中数据交换的次数
- 冒泡排序中数据交换的次数
- 冒泡排序中数据交换的次数
- 冒泡排序的交换次数,即数组逆序对的求解
- 冒泡排序中数据交换的次数(sdu2554
- 178_冒泡排序的交换次数(逆序数)
- 冒泡排序中数据交换的次数 (sdut oj)
- Unity_塔防游戏按波产生怪_063
- jvm系列 (三) ---锁的优化
- iOS Markdown 处理和展示
- springboot的快速入门
- 编译安装cmake3.9.1
- 树状数组应用-冒泡排序的交换次数
- 每天一个linux命令(13):less 命令
- matplotlib解决中文编码的终极方案
- Linux驱动开发-简单例子
- 图解VIM常用操作
- 557. Reverse Words in a String III
- CCF 201612-2 工资计算
- springBoot(四)整合之MyBatis整合
- C++函数中那些不可以被声明为虚函数的函数