博客园 首页 私信博主 显示目录 隐藏目录 管理 动画
上一页 1 ··· 3 4 5 6 7 8 9 10 11 12 下一页
摘要: "本文参考这位dalao的题解" 前置技能: "二叉查找树" ~~其实kd tree很简单的啦~~ ~~和BST都差不多的啦~~ ~~就是在划分的时候把每一维都比较一下就行啦~~ ($dalao$的kd tree教程) ~~然而本蒟蒻是完全看不懂啊qwq~~ 于是我们从头讲起吧: step 1 首先 阅读全文
posted @ 2019-06-11 22:21 Hastin 阅读(1238) 评论(1) 推荐(2) 编辑
摘要: "题面" 解析 首先,我们考虑下暴力的做法: 每次将一个任务的重要度加入到它的区间中, 询问的时候就直接加前$k$大. 然而,这样肯会炸的(都说了是暴力了). 其实,我们可以转化一下区间修改(因为区间修改似乎并不好做哈qwq) 利用前缀和与差分的思想(不会的请自行百度下), 将要修改的区间转化为单点 阅读全文
posted @ 2019-06-06 18:05 Hastin 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 前置技能: "平衡树前传:BST" 终于学到我们喜闻乐见的平衡树啦! 所以我们这次讲的是平衡树中比较好写的$Treap$. (以后会写splay的先埋个坑在这) 好了,进入正题. step 1 我们知道,BST虽然很方便, 但是,它很容易被卡成一条链. 因此,我们需要一个能够保持平衡的BST. 于是 阅读全文
posted @ 2019-06-06 10:54 Hastin 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 平衡树前传之BST 二叉查找树($BST$),是一个类似于堆的数据结构, 并且,它也是平衡树的基础. 因此,让我们来了解一下二叉查找树吧. (其实本篇是作为放在平衡树前的前置知识的,但为了避免重复~~懒得写~~就单独拎了出来) 首先,二叉查找树,是一个树形的数据结构~~废话~~,树上的每个节点有一个 阅读全文
posted @ 2019-06-05 19:29 Hastin 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 众所周知,线段树是一个非常好用~~也好写~~的数据结构, 因此,我们今天的前置技能: 线段树 . 然而,可持久化到底是什么东西? 别急,我们一步一步来... step 1 首先,一道简化的模型: 给定一个长度为$n$的序列,$m$个操作,支持两种操作: 修改某个点$i$的权值 查询历史上某个版本$u 阅读全文
posted @ 2019-06-04 22:37 Hastin 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 解析 这题似乎是裸的平衡树$+$模拟...~~于是用$treap$写了个板子.~~ 看上去,我们似乎要维护两颗树(宠物和顾客), 然而,注意到,同一时间宠物点只有一类人(或物qwq), 所以,只要判断当前宠物店和询问是否是一样, 根据题意模拟就行了. ~~另外,没有重复感觉比较舒服~~ 上AC代码吧 阅读全文
posted @ 2019-05-08 18:27 Hastin 阅读(154) 评论(1) 推荐(0) 编辑
摘要: "题面" 解析 事实上,这应该是道树剖裸题了, 将已安装表示为$1$, 那么只需要在线段树中记录一下区间中$1$的个数就行了. 在询问的时候, 如果是安装,就查询$x$到根节点, 卸载的话,就查询$x$的子树. 注意下细节就行了(最好整体位移一下). ~~感觉真的没什么讲的了qwq~~ 上代码吧: 阅读全文
posted @ 2019-05-06 21:13 Hastin 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 题目意思 有六种不同的石子,权值为$1$~$6$,给出六种石子的数量,求能否将石子分成权值相等的两份. 解析 这题可以直接用多重背包写, 因为仔细想想, 能够平均分成两份, 也就是能将一部分石子拼成总权值的二分之一. 那么,直接用可行性DP写就行了. (对于可行性DP请自行上百度吧qwq~~(因为这 阅读全文
posted @ 2019-04-04 13:49 Hastin 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 解析 考虑到数据范围,其实我们可以用记搜. 设$f[a][b][c][d]$表示还剩$a$个'{}',$b$个"[]",$c$个"()",深度$\leq d$个数,(注意是小于等于$d$,这样好统计一些). 然后,回到题目. 我们可以假设当前的串由两个串组成(其中一个可能是空串), 那么根据乘法原理 阅读全文
posted @ 2019-04-04 11:55 Hastin 阅读(418) 评论(0) 推荐(0) 编辑
摘要: 先讲下题目意思 给定一个长度为$n$的序列$(1 \leq n \leq 100)$, 每次合并两个元素$i,i+1$,即将$i,i+1$变为一个新的元素,权值为$a[i] a[i+1]$($a$为权值), 求在$n 1$次合并后剩下的元素的权值为$t$$( 10000 \leq t \leq 10 阅读全文
posted @ 2019-04-04 07:58 Hastin 阅读(258) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 11 12 下一页