Title

08 2021 档案

摘要:#D. Coloring Brackets 预处理 由于栈的特性,我们可以储存左括号和读取到刚刚读到的左括号,并当读取到右括号时,我们可以将最近的左括号提取出来并做一个匹配处理。 ##DP的设置 DP数组的设置,dp[l][r][color1][color2]表示的是l位置是color1和r位置是c 阅读全文
posted @ 2021-08-27 23:33 BeautifulWater 阅读(96) 评论(0) 推荐(0)
摘要:题目意思: 火星上使用了一套表示时间的系统,这套系统和地球上时间表示系统是相似的。 给定一个火星时间,猜测\判断其进制类型(通过将火星时间转换成地球时间,该地球时间是否存在不合理的地方,如果没有,则说明在该进制下,火星时间是可行的) 若不存在任何进制,则输出0; 若任何进制都可以采取,则输出-1; 阅读全文
posted @ 2021-08-27 15:02 BeautifulWater 阅读(58) 评论(0) 推荐(0)
摘要:#资料 ##10个设计小妙招,人人都可能用到 --B站up主-设计师深海 #【设计】字在手,跟我走——【一】单个标题也不慌 适用情境 可用的元素只有一个标题 直接将字体摆在中间会显得布局非常单调,这个时候,我们可以新建一个图层,将上面这个字体拷贝一下,复制成一个新的图层,并修改其透明度,起到对原有图 阅读全文
posted @ 2021-08-24 16:36 BeautifulWater 阅读(249) 评论(0) 推荐(0)
摘要:#分块 ##分块的意思 分块就是将一段长区间(寿司条)分成一段段规格尽量统一的寿司,但技艺不精的新人厨师有的时候会不小心再两端的一端切出不符合规格标准(没有提前算好平均下去的规格,只是按既定的规格)的区间(从寿司的角度来理解,可以看成是边角料,从区间的角度,就是需要进行特殊处理的区间)。 把一个长度 阅读全文
posted @ 2021-08-23 22:20 BeautifulWater 阅读(237) 评论(0) 推荐(0)
摘要:树状数组 引入1 给出一个长度为n的数组,完成以下两种操作: 将第x个数加上k(对应的是单点修改) 输出区间[x,y]内每一个数的和(对应的是区间查询) 朴素的做法 操作一是只需直接对a[i]的值进行单点修改,这是一个$O(1)$的操作,而操作二就需要对区间内每一个元素进行访问并累加它们的值,这是一 阅读全文
posted @ 2021-08-17 23:47 BeautifulWater 阅读(193) 评论(0) 推荐(0)
摘要:#【数据结构】【植树计划】哈夫曼树Huffman Tree[CF]D. Boxes And Balls 前置知识: ###二叉树叶子结点与度为2的节点关系 在二叉树中,一个结点最多拥有两个儿子结点,因而结点的类型可以分为拥有0个儿子结点的结点$n_0$,拥有1个儿子结点的结点$n_1$和拥有2个儿子 阅读全文
posted @ 2021-08-16 19:30 BeautifulWater 阅读(330) 评论(0) 推荐(0)
摘要:#二叉树 叶子结点 与 度为2的节点关系 在二叉树中,一个结点最多拥有两个儿子结点,因而结点的类型可以分为拥有0个儿子结点的结点$n_0$,拥有1个儿子结点的结点$n_1$和拥有2个儿子结点的结点$n_2$​,记总结点个数为S \(结点数=拥有0个儿子结点的结点+拥有1个儿子结点的结点+拥有2个儿子 阅读全文
posted @ 2021-08-15 21:50 BeautifulWater 阅读(3667) 评论(0) 推荐(0)
摘要:矩阵乘法 矩阵乘法顾名思义,就是将两个矩阵做乘法运算(相当于在矩阵意义下重载乘法运算符?) 矩阵乘法的定义 矩阵A $\times $​ 矩阵B = 矩阵C \(C_{i,j}=\sum_{k=1}^{m}A_{i,k}\times B_{k,j}\) 矩阵C的第i行第j列元素是矩阵A第i行的所有元 阅读全文
posted @ 2021-08-12 09:53 BeautifulWater 阅读(323) 评论(0) 推荐(0)
摘要:字符串哈希 哈希 哈希就是将所要处理的数据转化成数字,且这个数字能唯一地去对应上这个数据,若这个数字对应上了多个数字,则称作哈希冲突。比如$K_{1}!=K_{2}$,但$hash(K_{1})=hash({K_{2}})$ 字符串哈希 概念:字符串哈希是指将一个任意长度的字符串映射成一个非负整数, 阅读全文
posted @ 2021-08-10 21:23 BeautifulWater 阅读(596) 评论(0) 推荐(0)
摘要:#ST表和RMQ算法 给定一段区间$[L,R]\(,要求我们给出\)[L,R]\(中某个子区间\)[L_{0},R_{0}]\(的最大值,我们可以**临时**从头到尾一个个比对这个子区间的元素来从这个子区间中找到最大值,但当要求我们去查询q次区间最值时,当q达到一定的次数时,根据容斥定理,一定会存在 阅读全文
posted @ 2021-08-09 21:37 BeautifulWater 阅读(233) 评论(0) 推荐(0)
摘要:#B. Mine Sweeper II 戳我 思路 地雷格向非地雷格发出的数字等于非地雷格向地雷格接收到的数字也将等于地雷格从非地雷格回收到的数字总和。 (根据“数字”守恒) 将非地雷格转换成地雷格可以看成是把此时该地雷格上的数字一一归还给相应的非地雷格,而地雷格在接收到周围的原本的非地雷格归还的数 阅读全文
posted @ 2021-08-09 10:03 BeautifulWater 阅读(96) 评论(0) 推荐(0)
摘要:费马小定理Fermat’s Little Theorem 引入 剩余类 指定一个数p,将指定的这个数对所有数字进行取余操作,并根据取余的结果对这些数进行分类,有0,1,2,3,...,p-1共p类。 子概念:完全剩余系,又称完系,其中包含的取余的结果都是两两互异的,不纯在相同的数字。 同余 同余的定 阅读全文
posted @ 2021-08-08 21:42 BeautifulWater 阅读(429) 评论(0) 推荐(0)
摘要:#Mixed——二分最短路模型——G.It is all about wisdom 考时bfs,dfs加剪枝(dfs在最坏情况下的剪枝相当于bfs加剪枝,其实bfs加剪枝,有点奇怪,一些剪枝在bfs的作用下并不能发挥很好的效果),在第二点的时候都t了,对于至少这类问题应该从二分的角度出发,而不是用求 阅读全文
posted @ 2021-08-05 22:11 BeautifulWater 阅读(72) 评论(0) 推荐(1)
摘要:基数排序 对一组数组按个位、十位、百位、...、最高位上的数字对这组数组进行排序。 算法流程 获取所要排序的数组中最大的元素,方便提取出最大的位数 int get_max(int a[],int n) { int maxn = a[0]; for(int i=1;i<n;i++) maxn = ma 阅读全文
posted @ 2021-08-05 19:48 BeautifulWater 阅读(96) 评论(0) 推荐(0)
摘要:#平方和公式的推导 ##引理1 \(C_{m}^{n}=C_{m-1}^{n}+C_{m-1}^{n-1}\) 世俗理解: 从m个物品挑选出n个物品,在面临第n个物品的抉择时,有选与不选的两种操作,如果这个时候选了,其余的n-1个物品就在m-1中个物品中选;如果这个时候还是不选,n个物品就得在m-1 阅读全文
posted @ 2021-08-04 21:48 BeautifulWater 阅读(586) 评论(0) 推荐(1)
摘要:#博弈论:Nim游戏 Nim游戏:尼姆游戏 #Nim游戏 ##内容 给定 n 堆石子,两位玩家轮流操作,每次操作可以从任意一堆石子中拿走任意数量的石子(可以拿完,但不能不拿),最后无法进行操作的人视为失败。 问如果两人都采用最优策略,先手是否必胜。 概念 必胜态 在当前局面下,先手必胜的状态叫做必胜 阅读全文
posted @ 2021-08-04 18:52 BeautifulWater 阅读(354) 评论(0) 推荐(0)
摘要:对抗搜索 ##轮流搜索 op的值为0或1,通过1-op来使得op可以在0和1之间进行切换 int dfs(int op){ if(op) dfs(1-op); else dfs(1-op); return ; } 对抗搜索(博弈搜索) 一下子要求答案朝着一个方向发展,一下子又要求答案朝着另一个方向发 阅读全文
posted @ 2021-08-04 15:25 BeautifulWater 阅读(177) 评论(0) 推荐(0)