poj 1804 Brainman
来源:互联网 发布:forespider软件 编辑:程序博客网 时间:2024/05/29 14:35
#include <iostream>#include <cstring>#include <cstdio>#include <algorithm>using namespace std;typedef long long LL;const int MAXN = 1010;int a[MAXN], b[MAXN];LL sum;void Merge(int low, int mid, int high){ int i = low, j = mid+1, k = low; while(i <= mid && j <= high) { if(a[i] <= a[j]) b[k++] = a[i++]; else b[k++] = a[j++], sum += (mid - i + 1); } while(i <= mid) b[k++] = a[i++]; while(j <= high) b[k++] = a[j++]; for(int i = low; i <= high; ++i) a[i] = b[i]; return ;}void Merge_Sort(int low, int high){ if(low == high) return ; if(low < high) { int mid = (low + high) >> 1; Merge_Sort(low, mid); Merge_Sort(mid+1, high); Merge(low, mid, high); } return ;}int main(){ int T, kcase = 1; int n; scanf("%d", &T); while(T--) { scanf("%d", &n); for(int i = 0; i < n; ++i) scanf("%d", &a[i]); sum = 0; Merge_Sort(0, n-1); printf("Scenario #%d:\n%I64d\n\n", kcase++,sum); } return 0;}
0 0
- POJ 1804 Brainman
- poj 1804 Brainman
- POJ 1804 Brainman
- POJ 1804 Brainman
- poj 1804 Brainman
- poj 1804 Brainman
- poj 1804:Brainman
- POJ 1804 Brainman
- POJ 1804 Brainman
- POJ 1804 Brainman 笔记
- poj 1804 Brainman(归并)
- poj 1804Brainman(树状数组)
- [POJ 1804] Brainman · 逆序对
- POJ 1804 Brainman(归并排序)
- poj 1804 Brainman(求逆序对)
- poj 1804 Brainman(归并排序求逆序对)
- POJ 1804 Brainman (归并排序 -- 求逆序对数)
- poj 1804 (归并排序求逆序数)Brainman
- ubuntu10.04上安装 ibus Google拼音输入法,包括报错CMake Error: your CXX compiler的解决方法
- ORA-01110 ORA-01111: name for data file 69 is unknown - rename to correct file
- 条款7:当使用new得指针的容器时,记得在销毁容器前delete那些指针
- 华为OJ 合唱队 最长递增子序列,最长
- WOJ校赛 Problem 1542 - F - Countries 并查集+离散化+Floyd
- poj 1804 Brainman
- HDU 1541 Stars || POJ 2352 stars || NYOJ 117 求逆序数
- hdfs文件操作
- 设置dialog形式的activity背景有黑框的问题处理
- HTML中的title换行问题
- android-打电话代码实现
- python 中神奇的函数参数传递
- CCombobox使用大全
- 体验成员函数