为了便于考虑,把删除反序变为增加

于是就变成关于权值和位置和时间的三维数点

一波cdq一波树状数组教做人

(神TM需要longlong,80了一发)

 #include <bits/stdc++.h>
#define mid (l+r>>1)
#define ll long long
using namespace std;
ll n,ret,m,tem;
ll tr[],a[],in[];
bool ok[];
struct qu
{
ll num,pos,id,ans;
} q[],t[];
bool com(qu a,qu b)
{
return a.id<b.id;
}
void add(ll x,ll y){ for(;x<=n;x+=x&-x) tr[x]+=y;}
ll que(ll x){ for(ret=;x;x-=x&-x) ret+=tr[x];return ret;}
void cdq(ll l,ll r)
{
if(l==r) return;
cdq(l,mid);cdq(mid+,r);
for(ll i=l,j=l,k=mid+;i<=r;i++)
if((k>r) || (j<=mid && q[j].pos<q[k].pos)) t[i]=q[j++];
else t[i]=q[k++];
ll ALL=;
for(ll i=l;i<=r;i++)
if((q[i]=t[i]).id>mid)
q[i].ans+=ALL-que(q[i].num);
else
add(q[i].num,),++ALL;
for(ll i=l;i<=r;i++)
if(q[i].id<=mid)
add(q[i].num,-);
for(ll i=r;i>=l;i--)
if(q[i].id>mid)
q[i].ans+=que(q[i].num);
else
add(q[i].num,);
for(ll i=l;i<=r;i++)
if(q[i].id<=mid)
add(q[i].num,-);
}
int main()
{
scanf("%d%d",&n,&m);
for(ll i=;i<=n;i++)
scanf("%d",&tem),a[tem]=i;
for(ll i=;i<=m;i++)
scanf("%d",&in[i]),ok[in[i]]=;
tem=;
for(ll i=;i<=n;i++)
if(!ok[i])
q[++tem].num=i,q[tem].pos=a[q[tem].num],q[tem].id=tem;
for(ll i=m;tem<=n;i--)
q[++tem].num=in[i],q[tem].pos=a[q[tem].num],q[tem].id=tem;
cdq(,n);
sort(q+,q+n+,com);
for(ll i=;i<=n;i++)
q[i].ans+=q[i-].ans;
for(ll i=n;i>n-m;i--)
printf("%lld\n",q[i].ans);
return ;
}

bzoj3295: [Cqoi2011]动态逆序对 三维数点的更多相关文章

  1. bzoj3295 [Cqoi2011]动态逆序对 cdq+树状数组

    [bzoj3295][Cqoi2011]动态逆序对 2014年6月17日4,7954 Description 对于序列A,它的逆序对数定义为满足i<j,且Ai>Aj的数对(i,j)的个数. ...

  2. [BZOJ3295][Cqoi2011]动态逆序对 CDQ分治&树套树

    3295: [Cqoi2011]动态逆序对 Time Limit: 10 Sec  Memory Limit: 128 MB Description 对于序列A,它的逆序对数定义为满足i<j,且 ...

  3. bzoj千题计划146:bzoj3295: [Cqoi2011]动态逆序对

    http://www.lydsy.com/JudgeOnline/problem.php?id=3295 正着删除看做倒着添加 对答案有贡献的数对满足以下3个条件: 出现时间:i<=j 权值大小 ...

  4. BZOJ3295 [Cqoi2011]动态逆序对 —— CDQ分治

    题目链接:https://vjudge.net/problem/HYSBZ-3295 3295: [Cqoi2011]动态逆序对 Time Limit: 10 Sec  Memory Limit: 1 ...

  5. bzoj3295: [Cqoi2011]动态逆序对(cdq分治+树状数组)

    3295: [Cqoi2011]动态逆序对 题目:传送门 题解: 刚学完cdq分治,想起来之前有一道是树套树的题目可以用cdq分治来做...尝试一波 还是太弱了...想到了要做两次cdq...然后伏地 ...

  6. bzoj3295[Cqoi2011]动态逆序对 树套树

    3295: [Cqoi2011]动态逆序对 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 5987  Solved: 2080[Submit][Sta ...

  7. 2018.07.01 BZOJ3295: [Cqoi2011]动态逆序对(带修主席树)

    3295: [Cqoi2011]动态逆序对 **Time Limit: 10 Sec Memory Limit: 128 MB Description 对于序列A,它的逆序对数定义为满足i<j& ...

  8. BZOJ3295: [Cqoi2011]动态逆序对(树状数组套主席树)

    3295: [Cqoi2011]动态逆序对 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 7465  Solved: 2662[Submit][Sta ...

  9. [bzoj3295][Cqoi2011]动态逆序对_主席树

    动态逆序对 bzoj-3295 Cqoi-2011 题目大意:题目链接. 注释:略. 想法:直接建立主席树. 由于是一个一个删除,所以我们先拿建立好的root[n]的权值线段树先把总逆序对求出来,接着 ...

随机推荐

  1. RQNOJ 328 炮兵阵地:状压dp

    题目链接:https://www.rqnoj.cn/problem/328 题意: 司令部的将军们打算在N*M的网格地图上部署他们的炮兵部队. 一个N*M的地图由N行M列组成(N≤100,M≤10), ...

  2. 分享知识-快乐自己:初始 Struts2 (基本概念)及 搭建第一个Demo

    1):struts2 的基本概念: 1-1):Struts2 是什么? 1.Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2 ...

  3. 用rem适配移动端

    常见方式: 1. 固定宽度(320)做法:这样前端倒是爽了,可是大页面两边有留白,小页面图标文字又会缩的很小,用户体验极其不好. 2. 流式布局:其实就是用%,这样宽度倒还差不多,高度怎么搞?所以这种 ...

  4. 谈"零缺陷"

    在刚参加工作初期的一次关于质量的培训中,第一次听到"零缺陷"这个词懵懵懂懂,当成一道概念题给记下.今年重读<质量免费>时对与零缺陷的部分始终心存疑虑,最近读<第一 ...

  5. ACM学习历程——HDU4472 Count(数学递推) (12年长春区域赛)

    Description Prof. Tigris is the head of an archaeological team who is currently in charge of an exca ...

  6. 运维程序】简单的命令控制器(支持定时命令执行、重复定时任务命令和进程管理,开发这个小程序主要是为了方便管理服务进程)【个人github项目】

    一.前言: command-controller 一个运维程序,简单的命令控制器(支持定时命令执行和重复定时命令,开发这个程序主要是为了方便管理服务进程) 本来是要用python做的,但是之前做ffm ...

  7. AIX 7.1上安装Oracle11g

    1. 上传oracle 11g介质到AIX 我下载的介质是aix.ppc64_11gR2_database_1of2.zip和aix.ppc64_11gR2_database_2of2.zip, 执行 ...

  8. zk 05之:ZooKeeper的配置

    ZooKeeper 的功能特性通过 ZooKeeper 配置文件来进行控制管理( zoo.cfg 配置文件). ZooKeeper 这样的设计其实是有它自身的原因的.通过前面对 ZooKeeper 的 ...

  9. Ubuntu&nbsp;Navicat&nbsp;for&amp;nbs…

    首先上官网上下载LINUX版本: http://www.navicat.com/download 1. 下载 navicat110_mysql_en.tar.gz 文件 2. 下载后解压tar文件 t ...

  10. 删除win7快捷方式小箭头

    删除win7快捷方式小箭头 reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Sh ...