HDU 2689 Sort it 树状数组
2017-08-03 20:47
295 查看
Sort itTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 4740 Accepted Submission(s): 3297 Problem Description You want to processe a sequence of n distinct integers by swapping two adjacent sequence elements until the sequence is sorted in ascending order. Then how many times it need. For example, 1 2 3 5 4, we only need one operation : swap 5 and 4. Input The input consists of a number of test cases. Each case consists of two lines: the first line contains a positive integer n (n <= 1000); the next line contains a permutation of the n integers from 1 to n. Output For each case, output the minimum times need to sort it in ascending order on a single line. Sample Input 3 1 2 3 4 4 3 2 1 Sample Output 0 6 Author WhereIsHeroFrom Source ZJFC 2009-3 Programming Contest Recommend yifenfei | We have carefully selected several similar problems for you: 1892 2688 3584 2492 2227 在这里简单说一下,这里也是利用下标的那个思想,这个数出现过赋值为1,就那个意思,自己理解下,和普通相比的区别就是这个求前面有多少个数省事 ac代码: #include <stdio.h> #include <cmath> #include <cstring> #include <queue> #include <algorithm> #define ll long long using namespace std; const int maxn=1e6+5; int n; int tree[maxn]; int a; void add(int k,int num){ while(k<maxn){ tree[k]+=num; k+=k&-k; } } int read(int k){ int sum=0; while(k > 0){ sum+=tree[k]; k-=k&-k; } return sum; } int main() { while(~scanf("%d",&n)){ int ans=0; memset(tree,0,sizeof(tree)); for(int i=1;i<=n;i++){ scanf("%d",&a); add(a,1); ans+=i-read(a); } printf("%d\n",ans); } return 0; } |
|
相关文章推荐
- HDU 2689 Sort it(树状数组)(类似逆序数,同样不需要离散化)
- HDU 2689 Sort it 求逆序数,树状数组实现
- hdu 2689 Sort it
- HDU 2689 Sort it
- HDU 2689 Sort it
- hdu 2689 Sort it
- HDU2689 Sort it【树状数组】【逆序数】
- HDU 2689 Sort it 简单树状数组入门
- HDU 2689 Sort it(树状数组,逆序数)
- HDU2689-树状数组&逆序数|分治-Sort it
- HDU-2689-Sort it
- hdu 2689 Sort it(线段树)
- ecjtu-summer training #3 A Sort it HDU 2689
- hdu 2689 Sort it 一维树状数组的应用
- HDU 2689 Sort it【树状数组】
- HDU 2689 Sort it (树状数组)
- HDU - 2689 Sort it
- HDU 2689 Sort it
- HDU 2689 sort it - from lanshui_Yang
- hdu2689 Sort it (树状数组)