题意

给三个由\(n\)个数组成的数组\(A\),\(B\)和\(C\),找一个最小的\(a+b+c\)使得\(A\),\(B\),\(C\)的对应前\(a\),\(b\),\(c\)个元素的并集恰好和\(A\),\(B\),\(C\)的并集相同
\(1\leq n\leq {10}^6\)

分析

我看课件上面描述的题意是这些数组是\(1\cdots n\)的排列……不过反正做法差不多。

考虑这种题目一般套路都是枚举一维,然后考虑剩下的。考虑枚举一个\(a\),判定最小的\(b+c\),我们对于每一个数\(i\),考虑将其视作若干个点对\((pB_i,pC_i)\),此时我们需要包含所有点的目标等价于找最大的\(pB_i\)和\(pC_i\)而已……

然后这个题目就很简单了,我们考虑对每个\(A\)里面的位置稍微处理一下当前这个位置的数是不是第一次出现,然后从后往前往表里面加(当然在最后的时候还需要将其他里面有但是这个里面没有的加进去)

感觉可以稍微换一下出成另一个题目,要求并集大小不小于某个\(K\),这样感觉上就是类似在一条折线上的维护,这条折线上的点包含的都恰好\(K\)个,然后加某个点进去会使得这一段“下陷”,实际上也就相当于一个类似维护凸壳之类的东西。不难发现,这里我们维护的这个下凸壳,因为我们某个点加进去之后肯定只会最多被“经过”一次(就是折线跨过去),那么我们完全可以找出这个点影响了哪一段区间的答案(这一段的折线需要下移),然后暴力找其中的若干个区间(因为某个点的覆盖使得区间中的一部分答案得到贡献)并直接向下覆盖即可。

转载于:https://www.cnblogs.com/wendavid/p/9205421.html

[CF 392 Div.1 D]Three Arrays相关推荐

  1. edu cf #138 Div.2(A~D)

    edu cf #138 Div.2 文章目录 edu cf #138 Div.2 [A. Cowardly Rooks](https://codeforces.com/contest/1749/pro ...

  2. CF #366(div.2) C 模拟,思维

    CF #366(div.2)  C.  Thor 题意:一个手机n个联系人,有q个操作.每次给出ty和ai,如ty==1,表示收到ai的一条信息:如ty==2,表示将ai发的信息都看掉:如ty==3, ...

  3. CF #371 (Div. 2) C、map标记

    1.CF #371 (Div. 2)   C. Sonya and Queries  map应用,也可用trie 2.总结:一开始直接用数组遍历,果断T了一发 题意:t个数,奇变1,偶变0,然后与问的 ...

  4. cf #823 Div.2(A~C)

    Cf #823 Div.2 文章目录 Cf #823 Div.2 [A. Planets](https://codeforces.com/contest/1730/problem/A) [B. Mee ...

  5. cf #818 Div.2(A~C)

    Cf #818 Div.2 文章目录 Cf #818 Div.2 [A. Madoka and Strange Thoughts](https://codeforces.com/contest/171 ...

  6. CF #683 div.2

    CF #683 div.2 目前 ABCD A. Add Candies B. Numbers Box C. Knapsack D. Catching Cheaters 结尾 A. Add Candi ...

  7. CF#764(div.3A~D)dp进阶

    CF#764(div.3A~D)&&dp进阶 CF#764(div.3) Problem - A - Codeforces 题意 一个数列,每次操作可以使这个数列中的任何数加1,问最少 ...

  8. CF #764 Div.3(B ~D)

    CF #764 Div.3 B题 Make AP 给定a b c 使其中一个数 乘 任意正整数m 问是否能构成成差数列 我们可以想到等差数列的性质 2b=a+c2b = a + c 2b=a+c 思路 ...

  9. cf #825 Div.2(A~C2)

    Cf #825 Div.2 文章目录 Cf #825 Div.2 [A. Make A Equal to B](https://codeforces.com/contest/1736/problem/ ...

最新文章

  1. Android控件系统(三)——Window与WindowMananger
  2. c语言编程中tem代表什么意思,“CTEM”是“Conventional Transmission Electron Microscopy”的缩写,意思是“常规透射电子显微镜”...
  3. php中url编码地址栏,php url地址栏传中文乱码解决方法集合_PHP
  4. php pdo连接oracle乱码,php pdo oracle中文乱码的快速解决方法
  5. windows server 驱动精灵_还在用Windows文件共享?我来教你一键摆脱Windows海量小文件使用和备份的噩梦...
  6. char 转wchar_t 及wchar_t转char
  7. SSH框架之Spring4专题3:Spring与AOP
  8. 前端进阶-手写Vue2.0源码(三)|技术点评
  9. 如何在回调中访问正确的“ this”?
  10. html转json有危险字符,javascript
  11. Android中在SurfaceView上高效绘图
  12. JEPLUS之APP自定义插件——JEPLUS软件快速开发平台
  13. AMSim高级系统建模与仿真软件安装坡姐过程的踩坑心得
  14. Cortex-M3 (NXP LPC1788)之IIC控制器
  15. Notepad软件的下载安装和使用
  16. 气候制度的转变和森林的丧失放大了亚马逊森林的火灾
  17. 2017年世界各国GDP总值排名预测榜单
  18. 华为HCNA独家视频课程
  19. office2003、2010、2013下载资源
  20. 第二章 随机变量及其分布

热门文章

  1. 机房重构(个人版)——类图
  2. block为什么用copy以及如何解决循环引用
  3. 别让用户发呆——设计中的防呆策略
  4. HDU 2955 Robberies
  5. Linux压缩与解压缩文件
  6. netty之ObjectSizeEstimator
  7. Android如何更新app的版本(中级)
  8. Python中读取、显示和保存图片的方法
  9. iOS底层(三)-状态寄存器
  10. PHP CI框架目录结构及运行机制