洛谷 1774 最接近神的人
【题解】
其实就是求逆序对。直接上树状数组就好了。
1 #include<cstdio> 2 #include<algorithm> 3 #include<cstring> 4 #define LL long long 5 #define rg register 6 #define N 500010 7 using namespace std; 8 int n,m,n2,a[N],b[N],t[N]; 9 LL ans; 10 inline int read(){ 11 int k=0,f=1; char c=getchar(); 12 while(c<'0'||c>'9')c=='-'&&(f=-1),c=getchar(); 13 while('0'<=c&&c<='9')k=k*10+c-'0',c=getchar(); 14 return k*f; 15 } 16 inline void add(int x){for(;x<=n2;x+=(x&-x)) t[x]++;} 17 inline int query(int x){int ret=0;for(;x>0;x-=(x&-x)) ret+=t[x]; return ret;} 18 int main(){ 19 n=read(); 20 for(rg int i=1;i<=n;i++) a[i]=b[i]=read(); 21 sort(b+1,b+1+n); n2=unique(b+1,b+1+n)-b-1; 22 for(rg int i=1;i<=n;i++) a[i]=lower_bound(b+1,b+1+n2,a[i])-b; 23 // for(rg int i=1;i<=n;i++) printf("%d ",a[i]); puts(""); 24 for(rg int i=1;i<=n;i++){ 25 ans+=query(a[i]); 26 add(a[i]); 27 } 28 printf("%lld\n",1LL*n*(n-1)/2-ans); 29 return 0; 30 }
View Code
转载于:https://www.cnblogs.com/DriverLao/p/9307343.html
洛谷 1774 最接近神的人相关推荐
- 洛谷 P1774 最接近神的人_NOI导刊2010提高(02)
题目描述 破解了符文之语,小FF开启了通往地下的道路.当他走到最底层时,发现正前方有一扇巨石门,门上雕刻着一幅古代人进行某种活动的图案.而石门上方用古代文写着"神的殿堂".小FF猜 ...
- 洛谷 P1774 最接近神的人(权值线段树+离散化)
根据贪心,每次都要交换两个逆序对,所以这个题目就是求逆序对的个数 利用权值线段树来动态加点,每次询问找区间内 [id+1,n] 的所有数的个数,由于取值线段树本身具有顺序,所以可以将区间查询变为单点查 ...
- 洛古 P1774 最接近神的人
置顶题解 P1908 [逆序对] - zhylj 的博客 - 洛谷博客 链接里有过程图,但题解里的题大小顺序和本题是相反的,但问题不大 题目描述 破解了符文之语,小FF开启了通往地下的道路 ...
- 【洛谷P1774】最接近神的人
最接近神的人_NOI导刊2010提高(02) 用类似于桶的方法,树状数组记录原序列的某位置之前已经插入了多少个数, 插入时树状数组单点加1即可 先排一遍序,从大到小插入所有数在原序列的位置, 统计每次 ...
- 最接近神的人(sophist/pas/c/cpp)
最接近神的人(sophist/pas/c/cpp) [题目描述] 破解了符文之语,小FF开启了通往地下的道路.当他走到最底层时,发现正前方有一扇巨石门,门上雕刻着一幅古代人进行某种活动的图案.而石门上 ...
- 最接近神的人 reverse
最接近神的人 reverse [题目描述]: 破解了符文之语,小FF开启了通往地下的道路.当他走到最底层时,发现正前方有一扇巨石门,门上雕刻着一幅古代人进行某种活动的图案.而石门上方用古代文写着&qu ...
- 试题二:最接近神的人(sophist/pas/c/cpp) (逆序对)
试题二:最接近神的人(sophist/pas/c/cpp) [题目描述] 破解了符文之语,小FF开启了通往地下的道路.当他走到最底层时,发现正前方有一扇巨石门,门上雕刻着一幅古代人进行某种活动的图案. ...
- 最接近神的人_NOI导刊2010提高(02)【洛谷P1774】
题目描述 破解了符文之语,小FF开启了通往地下的道路.当他走到最底层时,发现正前方有一扇巨石门,门上雕刻着一幅古代人进行某种活动的图案.而石门上方用古代文写着"神的殿堂".小FF猜 ...
- 【UOJ 51】最接近神的人
[题目描述]: 破解了符文之语,小FF开启了通往地下的道路.当他走到最底层时,发现正前方有一扇巨石门,门上雕刻着一幅古代人进行某种活动的图案.而石门上方用古代文写着"神的殿堂".小 ...
最新文章
- ORACLE了局,每天10问(二)
- shell脚本逻辑判断,文件目录属性判断,if,case用法
- 如何测量代码执行时间
- crm系统是什么很棒ec实力_搭建CRM系统要明确几个步骤?什么样的CRM是真正有用的系统?...
- console 程序随系统启动及隐藏当前程序窗口
- Ocelot简易教程(五)之集成IdentityServer认证以及授权
- A ndroid 获取屏幕高度、标题高度、状态栏高度详解
- 没有servlet接口_Java——Servlet
- SCVMM2008测试手册
- 陶哲轩实分析 习题 12.5.8 :度量空间中有界闭集不一定是紧集
- python 直播源地址_如何获取视频的直播源地址
- 2018年人工智能之自动驾驶研究报告
- abap 日期格式转换
- 网上订餐系统python程序代码_网上订餐系统源代码
- GitHub:基于搜狗微信搜索的微信公众号爬虫接口
- 前端Echarts数据可视化
- 当杭州为人称道的美丽遇见了华为云!
- 为什么对偶问题一定是凸优化问题?
- bug解决:如何解决浏览器显示乱码问题?
- RCF—用于C++的进程间通讯(4)