2018年全国多校算法寒假训练营练习比赛(第五场):A题:逆序数(树状数组or归并排序)
题目描述
输入描述:
第一行有一个整数n(1 <= n <= 100000), 然后第二行跟着n个整数,对于第i个数a[i],(0 <= a[i] <= 100000)。
输出描述:
输出这个序列中的逆序数
输入
5
4 5 1 3 2
输出
7
解题思路:树状数组求逆序数。
AC代码:
#include<iostream>
#include<string.h>
#include<algorithm>
using namespace std;
const int maxn=;
typedef long long LL;
int n,val,aa[maxn];
int lowbit(int x){
return x & -x;
}
void update(int x,int val){//从左往后更新
while(x<=n){
aa[x]+=val;
x+=lowbit(x);
}
}
int getsum(int x){//从右往左相加
int ret=;
while(x>){
ret+=aa[x];
x-=lowbit(x);
}
return ret;
}
int main(){
while(cin>>n){
LL ans=;
memset(aa,,sizeof(aa));//注意清0
for(int i=;i<=n;++i){
cin>>val;
update(val,);//先更新该点的值为1
ans+=i-getsum(val);//再计算前面未出现的个数,即为逆序数
}
cout<<ans<<endl;
}
return ;
}
2018年全国多校算法寒假训练营练习比赛(第五场):A题:逆序数(树状数组or归并排序)的更多相关文章
- 【2018年全国多校算法寒假训练营练习比赛(第五场)-E】情人节的电灯泡(二维树状数组单点更新+区间查询)
		
试题链接:https://www.nowcoder.com/acm/contest/77/E 题目描述 情人节到了,小芳和小明手牵手,打算过一个完美的情人节,但是小刚偏偏也来了,当了一个明晃晃的电灯泡 ...
 - 2018年全国多校算法寒假训练营练习比赛(第一场)闯关的lulu
		
闯关的lulu 链接:https://www.nowcoder.com/acm/contest/67/J 来源:牛客网 题目描述 勇者lulu某天进入了一个高度10,000,000层的闯关塔,在塔里每 ...
 - 2018年全国多校算法寒假训练营练习比赛(第一场)D N阶汉诺塔变形
		
https://www.nowcoder.com/acm/contest/67/D 思路: 先手动模拟一下过程,以下是模拟过程,按顺序表示第几步需要移动的盘标号 1 1 2 1 1 2 1 1 3 1 ...
 - 2018年全国多校算法寒假训练营练习比赛(第一场)E 恋与程序员
		
https://www.nowcoder.com/acm/contest/67/E 思路: dfs 代码: #include<bits/stdc++.h> using namespace ...
 - 2018年全国多校算法寒假训练营练习比赛(第一场)G 圆圈
		
https://www.nowcoder.com/acm/contest/67/G 思路: 分形. 记录中间左边点的坐标,然后推出另外3个点的坐标,递归到最简单的情况. 代码: #include< ...
 - 2018年全国多校算法寒假训练营练习比赛(第一场)C 六子冲
		
https://www.nowcoder.com/acm/contest/67/C 思路: 模拟. 代码: #include<bits/stdc++.h> using namespace ...
 - 2018年全国多校算法寒假训练营练习比赛(第二场)B - TaoTao要吃鸡
		
链接:https://www.nowcoder.com/acm/contest/74/B来源:牛客网 题目描述 Taotao的电脑带不动绝地求生,所以taotao只能去玩pc版的荒野行动了, 和绝地求 ...
 - 2018年全国多校算法寒假训练营练习比赛(第二场)F - 德玛西亚万岁
		
链接:https://www.nowcoder.com/acm/contest/74/F来源:牛客网 题目描述 德玛西亚是一个实力雄厚.奉公守法的国家,有着功勋卓著的光荣军史. 这里非常重视正义.荣耀 ...
 - 2018年全国多校算法寒假训练营练习比赛(第一场)J - 闯关的lulu
		
链接:https://www.nowcoder.com/acm/contest/67/J来源:牛客网 题目描述 勇者lulu某天进入了一个高度10,000,000层的闯关塔,在塔里每到一层楼,他都会获 ...
 - 吐泡泡(2018年全国多校算法寒假训练营练习比赛(第二场)+栈模拟)+Plug-in(codeforces81A+栈模拟)
		
吐泡泡题目链接:https://www.nowcoder.com/acm/contest/74/A 题目: 思路: 这种题目当初卡了我很久,今天早训时遇到一个一样得题,一眼就想到用栈模拟,就又回来把这 ...
 
随机推荐
- [转]thrift系列 - 快速入门
			
原文: http://blog.csdn.net/hrn1216/article/details/51274934 thrift 介绍,入门例子. thrift 是一个RPC框架,实现跨语言 ---- ...
 - Codeforces Round #253 (Div. 1) A  Borya and Hanabi
			
A. Borya and Hanabi time limit per test 2 seconds memory limit per test 256 megabytes input standard ...
 - PAT-PAT (Advanced Level) Practise 1001. A+B Format (20) 【二星级】
			
题目链接:http://www.patest.cn/contests/pat-a-practise/1001 题面: 1001. A+B Format (20) Calculate a + b and ...
 - [Spring实战系列](19)Servlet不同版本号之间的差别
			
1. 2.3版本号 2.3版本号 <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application ...
 - web 开发之js---ajax 中的两种返回状态 xmlhttp.status和 xmlhttp.readyState
			
(1)xmlhttp.status xmlHttp.status的值(HTTP状态表)0**:未被始化 1**:请求收到,继续处理 2**:操作成功收到,分析.接受 3**:完成此请求必须进一步处理 ...
 - UC技术博客开放通知
			
国内知名浏览器UC开放技术博客( http://tech.uc.cn/),技术博客所涵盖技术点有: Hadoop Linux MySQL 前端与client技术 图像处理 开发语言和框架 数据存储 数 ...
 - 微信企业号调用js-sdk注意事项
			
企业号应用必须添加可信域名,域名必须通过备案,可以是子域名,如果网站带端口,一定也要加上端口号...踩坑记
 - ZOJ 3962 E.Seven Segment Display / The 14th Zhejiang Provincial Collegiate Programming Contest Sponsored by TuSimple E.数位dp
			
Seven Segment Display Time Limit: 1 Second Memory Limit: 65536 KB A seven segment display, or s ...
 - Dos下同时执行多条命令简化操作
			
起因,要查询8080端口被哪些程序占用了,但是直接在cmd netstat –ano 的话 一下子一大把数据出来了不利于查找, 于是就想起dos下可以同时指向多条命令,如是写下如下命令: netsta ...
 - WCF Rest post请求
			
只有遇到问题才能解决问题,这个问题之前也遇到过因为没有及时总结所以这个问题又重新出现困扰了我8个小时. ajax 请示WCF Rest 是一个比较成熟的技术.所以 涉及到了几个技术点 1 jquery ...