QAQ 从IOI搬了一道题目过来

官方题解貌似理论上没有我的做法优,我交到BZOJ上也跑的飞快

结果自己造了个数据把自己卡成了4s多,真是忧桑的故事

不过貌似原题是交互题,并不能离线

说说我的做法吧

首先我们会写暴力,而我的做法只要会写暴力就可以了

对于一个询问A,B

我们有以下几种方法:

1、搞出所有颜色是A的DFS序对应区间的左右端点和所有颜色是B的DFS序对应区间的左右端点

然后把所有端点排个序,线性扫一遍,维护一个扫描线cnt,当遇到A的左端点时++cnt,遇到A的右端点时--cnt

遇到B的左端点时ans+=cnt,这样我们就可以统计答案了

我们可以预处理出所有颜色的DFS序分别排序后的结果,每次做的时候归并排序一下就可以了

时间复杂度O(S(A)+S(B)) 即A颜色的个数+B颜色的个数,空间复杂度O(n)

2、我们DFS整棵树,记录上面DFS的时候经过了多少个A,经过B的时候更新答案就可以了

时间复杂度O(n),但是如果我们开O(n)的空间就可以在固定A的情况下求出所有可能的B的答案了

我们有如下两种做法之后就自然而然的可以A掉这道题目了

首先对于大小大于sqrt(n)的颜色,我们会发现它最多有sqrt(n)个,然后我们对于每个颜色DFS一遍计算答案

时间复杂度O(n*sqrt(n))

对于大小小于sqrt(n)的颜色,我们采用第一种做法

时间复杂度O(n*sqrt(n))

所以总时间复杂度O(n*sqrt(n))

注意到本题出题人热衷于卡内存,但是允许离线

所以不能预处理sqrt(n)个颜色的答案,只能将询问排序之后做

又注意到当A颜色>sqrt(n)或者B颜色>sqrt(n)的时候DFS的方式是不同的

但都是普及组的内容,随便写写就好啦,归并排序也是普及组的内容

所以代码还是极其好写的

转载于:https://www.cnblogs.com/joyouth/p/5492741.html

cojs 安科赛斯特 题解报告相关推荐

  1. 2015浙江财经大学ACM有奖周赛(一) 题解报告

    2015浙江财经大学ACM有奖周赛(一) 题解报告 命题:丽丽&&黑鸡 这是命题者原话. 题目涉及的知识面比较广泛,有深度优先搜索.广度优先搜索.数学题.几何题.贪心算法.枚举.二进制 ...

  2. 安工大计算机学院肖维民,安工大路由器实验报告.docx

    安工大路由器实验报告 计算机网络实验报告 专业计算机科学与技术班级计122班学号姓名叶玉虎指导教师肖维民 安徽工业大学计算机学院 XX年12月29号 -1- 目录 实验总体说明............ ...

  3. CSP-2019day1题解报告

    day1题解报告 题目 T1 T2 从链想起 转为正解 T3(摘自同级大佬xez) 题目 T1传送门 T2传送门 T3传送门 T1 乍一看,这道题做过,可以用对称性做,如果他的长度过了一半,就输出1, ...

  4. 爆炸的符卡洋洋洒洒题解报告

    爆炸的符卡洋洋洒洒题解报告 标签:动态规划 题目链接 来源:牛客网 解题思路: 显而易见的背包问题 但再观察a,b的数据范围,开不了那么大的dp数组 这就启发我们去优化,由于题目要求魔力总耗的是k的倍 ...

  5. 2022杭电多校5题解报告(同步自语雀)

    一.赛后总结 Wuhu~萌新又来啦~ 第一次在考场上写出NTT,虽然是比较裸,但感觉真的不错~ 开场看03,思路比较直,就是dijk,但跨层跳跃想了好久~最后想到了类似于B树或者B-树一类的层内链表, ...

  6. 2022杭电多校4题解报告(同步自语雀)

    一.赛后总结 嘤嘤嘤,本人纯萌新,深夜反思自己到底有多菜~(:′⌒`) 前天没写出状压,再前面不会SAM和圆方树,再往前不会NTT和FFT,真的是个啥也不会的萌新呢. 这场主要的问题在于02的0环和1 ...

  7. 2022牛客多校2题解报告(同步自语雀)

    一.赛后总结 总结就是缺乏清晰的大脑,当然一切的一切归因于实力不足. 开局看K,半个小时推出DP式子,交了就WA.差错没查出来,写了暴力对拍,就去看D了.后来拍了3个小时也没出问题...可能是数据生成 ...

  8. 【题解报告】ZJNU综合训练(2021.1.26)

    [题解报告]ZJNU综合训练(2021.1.26) B C D F H I J M 综合训练 ZJNU综合训练(2021.1.26) B:DP+搜索 | CF 1057C C:组合数学+dp | CF ...

  9. 题解报告(CDUT暑期集训——第三场)

    题解报告(CDUT暑期集训--第三场) A - Problem A. Ascending Rating HDU - 6319 思路:单调队列板子题?(但是弱的一批的我还是不会用(有空补上 用的滑动窗口 ...

最新文章

  1. Struts2-result类型
  2. 集众家之所长,你工作中遇到的可视化问题,如何在 Tableau 官网提交 Case?
  3. 【图数据库】Window下的安装Neo4j
  4. gis 大屏_gis大屏可视化应用技术方案_gis大屏可视化应用技术_gis大屏可视化应用 - 帆软...
  5. python中csv模块读写文件
  6. VTK:图表之ConstructGraph
  7. HDU - 4687 Boke and Tsukkomi(一般图最大匹配-带花图)
  8. html字体代码大全_Vba群发邮件及HTML设置字体格式的代码
  9. jquery-待办事列表-待整理
  10. ul c语言,IMX6UL裸机实现C语言蜂鸣器实验
  11. python中or的用法_解析python中and与or用法
  12. 根据class显示或隐藏多个div
  13. python单词倒排_【原创】python倒排索引之查找包含某主题或单词的文件
  14. c语言error lnk 2005,易语言5.71静态编译问题LIBC.lib(crt0dat.obj) : error LNK2005:
  15. 深入理解机器学习(一)——二分类模型评价指标详解(上)
  16. 天下没有免费的午餐 ---- 360 的伪免费
  17. 抖音怎样做伪原创视频 抖音短视频去水印之后怎么保存
  18. 萨缪尔·莫尔斯:电报之父的传奇人生
  19. MCU方案分享----按摩贴方案
  20. 慢性肾炎的中医药调理【转】

热门文章

  1. 改进的EfficientNet-B4用于黑色素瘤检测
  2. pandas基础实例
  3. mysql中只运行一部分数据_MySQL(一)——MySQL基础和部分面试题
  4. 余弦相似度 高维数据_海量高维数据与近似最近邻
  5. 剪枝综述论文阅读:Methods for Pruning Deep Neural Networks
  6. 华为零售商品识别一等奖方案
  7. 图像处理--知识点整理
  8. python中float输入文字_为什么Python的float对于一些很长的输入会引发ValueError?
  9. gpio stm8 管脚 配置工具_STM8S 外设模块的GPIO引脚应该如何配置
  10. mysql函数做条件_MySQL语句优化(三):避免条件字段做函数操作