NOIP模拟题 [线段树][矩阵快速幂]
有一定难度,要深入挖掘问题特性。
T1:
题意:
给定一个序列,每次操作把操作位置及其后面比它小的数按顺序排列(整体上仍在原来的位置),求每次操作后的逆序对数。
分析:
每个数对逆序对数都有一个贡献(在它后面比它小的数,对一个数进行操作就是取消它及它后面的数的贡献(因为对一个数来说,它都被重排了,它后面比它更小的就更会被重排了。
所以可以知道,每个点被取消贡献的时间就是它前面且比它大的数被操作的最早时间。
所以这道题主要涉及两个知识点:
1.归并排序求每个数的贡献值,因为数的位置会在排序的过程中变,所以要用结构体,就在左边的数被选时加上右边被选了的就是右边比它小的。
2.求取消贡献的时间(设为t),这里使用线段树。
首先,这个序列在变,可是,无论是会对x点的t值有改变的点,还是x点本身,若有变化,则t值肯定已确定,所以这个无影响。
然后,线段树肯定维护最小值,可是这里的两个条件看似无法同时保证,但只要想一下就会知道,如果我们以没有任何意义的顺序来做更新操作的话,显然是浪费了一个在线的限制,所以就容易想到以这两个条件的一个作为顺序,在线查询,就可以很容易保证这两个条件了。
(WA了后三个点,正在等待大神救济……)
#include<iostream>
NOIP模拟题 [线段树][矩阵快速幂]相关推荐
- 2018.10.09 ZYH的斐波那契数列(线段树+矩阵快速幂)
描述 ZYH最近研究数列研究得入迷啦! 现在有一个斐波拉契数列(f[1]=f[2]=1,对于n>2有f[n]=f[n-1]+f[n-2]), 但是斐波拉契数列太简单啦,于是ZYH把它改成了斐波拉 ...
- 2018.11.08 NOIP模拟 景点(倍增+矩阵快速幂优化dp)
传送门 首先按照题意构造出转移矩阵. 然后可以矩阵快速幂求出答案. 但是直接做是O(n3qlogm)O(n^3qlogm)O(n3qlogm)的会TTT掉. 观察要求的东西发现我们只关系一行的答案. ...
- P1357 花园 (矩阵快速幂+ DP)
题意:一个只含字母C和P的环形串 求长度为n且每m个连续字符不含有超过k个C的方案数 m <= 5 n <= 1e15 题解:用一个m位二进制表示状态 转移很好想 但是这个题是用矩阵快速 ...
- 51nod-1113 矩阵快速幂
原题链接 1113 矩阵快速幂 基准时间限制:3 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 收藏 关注 给出一个N * N的矩阵,其中的元素均为正整数.求这个矩阵的M次方 ...
- NOIP模拟题 2016.11.15 [LIS] [spfa] [同余最短路] [矩阵快速幂] [容斥原理] [数学]
小L的二叉树 [题目描述] 勤奋又善于思考的小L接触了信息学竞赛,开始的学习十分顺利.但是,小L对数据结构的掌握实在十分渣渣. 所以,小L当时卡在了二叉树. 在计算机科学中,二叉树是每个结点最多有两个 ...
- AtCoder abc256全题解(区间合并模板、矩阵快速幂优化dp、线段树……)
文章目录 A B C-枚举 D-区间合并模板 E-图论建模,函数图的性质 题意 思路 代码 F-树状数组 题意 思路 代码 G-矩阵快速幂优化dp H-线段树 思路 实现 传送门 本文CSDN 本文j ...
- ZYH的斐波那契数列【线段树动态开点+矩阵快速幂求斐波那契】
描述 ZYH最近研究数列研究得入迷啦! 现在有一个斐波拉契数列(f[1]=f[2]=1,对于n>2有f[n]=f[n-1]+f[n-2]), 但是斐波拉契数列太简单啦,于是ZYH把它改成了斐波拉 ...
- [3.3训练赛]One-Dimensional(矩阵快速幂),Freda的迷宫(无向图强连通分量+并查集),一道防AK好题
文章目录 T1:One-Dimensional title solution code T2:[NOIP模拟赛]Freda的迷宫 title solution code T3:[NOIP模拟赛]一道防 ...
- 20181023(模拟+矩阵快速幂及推公式+最短路+不知道什么DP)
NOIP欢乐%你赛 1. 小澳的方阵 (matrix.cpp/c/pas) [题目描述] 小澳最近迷上了考古,他发现秦始皇的兵马俑布局十分有特点,热爱钻研的小澳打算在电脑上还原这个伟大的布局. 他努力 ...
最新文章
- Python3 元组tuple
- javascript 表单验证大全(一)
- 网络加速_BWS2020:加速网络自治,使能敏捷商业
- java创建一个不可变对象_使用不可变对象创建值对象
- pppd 源码修改1
- StringBuilder对象的常用方法 c#1614651638
- shell脚本批量生成配置文件
- linux内核中等待队列(wait_event,wake_up...)
- 学习Java,真的可以月薪过万嘛?真实个人经历告诉你,记录了平时学习的内容以及学习过程中最真实的感受(二)
- 计算机组成与结构1800题,最新版数据结构1800题含完整答案详解
- vCenter资源池
- HPnbsp;Jetdirectnbsp;打印服务器配置
- python--爬虫51job(3.1)
- android 微信评论功能,Android仿微信朋友圈点击评论自动定位到相关行功能.pdf
- 以计算机思维思考当下面向未来,面向未来的核心素养:从运算能力到计算思维...
- JAVA300集——面向对象编程-类和对象-构造方法及其重载-方法调用
- 创业公司,老板说等公司做大了,给5%股权,建议你不要轻易相信
- Git基本操作和GtHub 特殊技巧
- 30岁人生进度条_你的人生进度条,只剩下最后的1%
- [ZZ]变速齿轮作者的文章--绝杀反外挂方案