摘要: 题意: C国由n个小岛组成,为了方便小岛之间联络,C国在小岛间建立了m座大桥,每座大桥连接两座小岛。两个小岛间可能存在多座桥连接。然而,由于海水冲刷,有一些大桥面临着不能使用的危险。 如果两个小岛间的所有大桥都不能使用,则这两座小岛就不能直接到达了。然而,只要这两座小岛的居民能通过其他的桥或者其他的 阅读全文
posted @ 2020-07-28 16:55 kstranger 阅读(85) 评论(0) 推荐(0)
摘要: 快速幂一般都是用来快速递推某个矩阵的n次幂的,一些题目的解法可以通过找规律递推,构建递推矩阵,就可以进行高次计算。 模板自用: #include <iostream> #include <vector> using namespace std; vector<vector<unsigned long 阅读全文
posted @ 2020-07-28 13:16 kstranger 阅读(123) 评论(0) 推荐(0)
摘要: 这个题目是一个nim游戏的变种 题意是: 古时丧葬活动中经常请高僧做法事。仪式结束后,有时会有“高僧斗法”的趣味节目,以舒缓压抑的气氛。节目大略步骤为:先用粮食(一般是稻米)在地上“画”出若干级台阶(表示N级浮屠)。又有若干小和尚随机地“站”在某个台阶上。最高一级台阶必须站人,其它任意。(如图1所示 阅读全文
posted @ 2020-07-26 23:30 kstranger 阅读(171) 评论(0) 推荐(0)
摘要: 自从打了两天的比赛,自闭了,现在只能看看搜索,重新刷题了。 希望自己能在算法这个方面越走越远吧 一道简单的搜索题,(因为太累了,肝不动了,就水这个简单题吧) 题目的意思是: 如下面第一个图的九宫格中,放着 1~8 的数字卡片,还有一个格子空着。与空格子相邻的格子中的卡片可以移动到空格中。经过若干次移 阅读全文
posted @ 2020-07-26 21:25 kstranger 阅读(172) 评论(0) 推荐(0)
摘要: 题目是: 二叉树可以用于排序。其原理很简单:对于一个排序二叉树添加新节点时,先与根节点比较,若小则交给左子树继续处理,否则交给右子树。 当遇到空子树时,则把该节点放入那个位置。 比如,10 8 5 7 12 4 的输入顺序,应该建成二叉树如下图所示,其中.表示空白。 ...|-1210-|...|- 阅读全文
posted @ 2020-07-23 16:20 kstranger 阅读(401) 评论(0) 推荐(0)
摘要: 该算法的主要思想就是每次bfs判断是否可以到达目的地,并把路径记录下来,然后通过dfs进行多次增广,直到找不到增广路径就停止。 按道理来说时间复杂度应该降低了,为什么我的时间复杂度反而变高了。不太明白,, 具体代码: #include <iostream> #include <cstring> #i 阅读全文
posted @ 2020-07-20 12:27 kstranger 阅读(90) 评论(0) 推荐(0)
摘要: st表是一个求RMQ问题的一种比线段树查询时间复杂度要小的算法 st表的主体是一个二维数组st[i][j],表示需要查询的数组的从下标i到下标i+2^j - 1的最值,这里以最大值为例 首先应该预处理log函数 因为向下取整所以可以这么来做: int mlog[N]; void pre(int n) 阅读全文
posted @ 2020-07-19 19:23 kstranger 阅读(104) 评论(0) 推荐(0)
摘要: 今天看到这个题很有意思就做了一下 题目是acwing 134 题 传送门 这是很特殊的一道题,能想到正解确实挺难,观察双端队列插入有个性质小数在前大数在后,所以排序后的数组下标如果是波谷的话就可以直接放到一个队列里面,具体情况模拟一下就知道了,这样我们就把这个问题转化为求最少波谷的问题,那么如何求最 阅读全文
posted @ 2020-07-17 13:18 kstranger 阅读(96) 评论(0) 推荐(0)
摘要: 题目在此:(点击即可) 这是一道蓝桥杯的题目: 题目的意思是: 给出一个长度为 n 的数组 {A_i},由 1 到 n 标号 , 你需要维护 m 个操作。 操作分为三种,输入格式为: 1 l r d,将数组中下标 l 到 r 的位置都加上 d,即对于 l<=i<=r,执行A_i=A_i+d。 2 l 阅读全文
posted @ 2020-07-16 23:25 kstranger 阅读(184) 评论(0) 推荐(0)
摘要: 树状数组能做的线段树都可以,但是有的时候为了代码简单,能写树状数组就不写线段树。 树状数组是一种类似线段树的数据结构,只不过树状数组上的操作比较简单,最简单的就是单点修改和区间查询 树状数组是按照数的二进制形式进行存储数据,s[1]存储的是a[1] ,s[2]存储的是a[1]+a[2] ,s[3]存 阅读全文
posted @ 2020-07-11 11:05 kstranger 阅读(114) 评论(0) 推荐(0)