StkOvflow

STACK OVERFLOW!

一言(ヒトコト)

摘要: AcWing 洛谷 解题思路 这题看到最短跳跃距离尽可能长就会想到二分 但是我们二分的$check$函数怎么写呢 可以看到限制条件移走的石头最多只能是$m$块 我们二分这个最短距离 容易想到一个贪心策略:扫描一遍$a$数组,如果$a_{i} - a_{now} < mid$,($now$是当前站的石 阅读全文
posted @ 2022-12-20 22:43 StkOvflow 阅读(52) 评论(0) 推荐(0)
摘要: 原题Vjudge 题目大意 给定一个字符串,字符串中可能含有$[$字符或者$]$字符 被$[]$框起来的字符串将会被移到最开头,(如果之前有过$[]$,则越晚出现的$[]$内字符串会被放在越前面,输出最后得到的字符串 解题思路 解法1 用一个类似循环链表的东西存储这个字符串,$cur$代表的是光标的 阅读全文
posted @ 2022-12-20 21:44 StkOvflow 阅读(40) 评论(0) 推荐(0)
摘要: 原题Vjudge 题目大意 模拟矩阵链乘的计算,如果出现错误就输出error,否则输出总共的乘法次数 对于一个矩阵$A(m \times n), B(n \times p)$ 乘法次数为$m\times n \times p$ 解题思路 这道题目就是经典的表达式模拟,对于一个矩阵的处理,我们可以用m 阅读全文
posted @ 2022-12-20 20:59 StkOvflow 阅读(31) 评论(0) 推荐(0)
摘要: 原题Vjudge 题目大意 给定一个入栈序列$[1,2,3....,n]$,判断出栈序列$[a_{1},a_{2}.....a_{n}]$是否合法 解题思路 这道题目我们可以用一个栈与双指针结合的算法 我们设立一个指针$j$,一开始指向的是$a_{1}$,也就是$j$的初始值为$1$ 然后我们把$1 阅读全文
posted @ 2022-12-20 19:49 StkOvflow 阅读(23) 评论(0) 推荐(0)
摘要: 原题链接 思路 从自己家开始,顺序任意,能去五个亲戚家,可以从亲戚家去到另外的亲戚家,于是这启发我们把每个亲戚和自己到全图其他点的最短路处理出来。 这乍一看是多源汇最短路,但是我们发现$Floyd$算法是$O(N^{3})$的,在这题的条件下=根本跑不过 但是我们的源点有几个? 只有一个自己加上五个 阅读全文
posted @ 2022-12-20 19:18 StkOvflow 阅读(15) 评论(0) 推荐(0)
摘要: 原题链接 这道题目就是把01背包和并查集结合到一起而已,我们可以把一个集合内部的所有元素的信息统一到祖先节点上,再对所有的集合做01背包,把每个集合看成一个物品,然后物品价值是集合内所有物品价值和,物品体积是集合内所有物品体积和。 代码 #include <iostream> #include <c 阅读全文
posted @ 2022-12-20 19:10 StkOvflow 阅读(17) 评论(0) 推荐(0)
摘要: 原题链接 定义差分数组b[],其中$b[i] = a[i] - a[i - 1]$ $a_{x} = \sum_{i=1}^{x}b_{i}$ 更改$a[l~r]$, 只要更改$b[l-1]$和$b[r]$即可, 最后要对$b[]$数组做一次前缀和得到之前的$a[]$ #include <bits/ 阅读全文
posted @ 2022-12-20 19:04 StkOvflow 阅读(20) 评论(0) 推荐(0)
摘要: 题目描述 输入一个长度为 $n$ 的整数序列。 接下来再输入 $m$ 个询问,每个询问输入一对 $l, r$。 对于每个询问,输出原序列中从第 $l$ 个数到第 $r$ 个数的和。 输入格式 第一行包含两个整数 $n$ 和 $m$。 第二行包含 $n$ 个整数,表示整数数列。 接下来 $m$ 行,每 阅读全文
posted @ 2022-12-20 16:22 StkOvflow 阅读(35) 评论(0) 推荐(0)
摘要: 题目描述 给定你一个长度为 $n$ 的整数数列。 请你使用归并排序对这个数列按照从小到大进行排序。 并将排好序的数列按顺序输出。 输入格式 输入共两行,第一行包含整数 $n$。 第二行包含 $n$ 个整数(所有整数均在 $1\ \sim\ 10^{9}$ 范围内),表示整个数列。 输出格式 输出共一 阅读全文
posted @ 2022-12-20 15:32 StkOvflow 阅读(19) 评论(0) 推荐(0)
摘要: 题目描述 给定一个长度为 $n$ 的整数数列,以及一个整数 $k$,请用快速选择算法求出数列从小到大排序后的第 $k$ 个数。 输入格式 第一行包含两个整数 $n$ 和 $k$。 第二行包含 $n$ 个整数(所有整数均在 $1 \sim 10^9$ 范围内),表示整数数列。 输出格式 输出一个整数, 阅读全文
posted @ 2022-12-20 15:28 StkOvflow 阅读(30) 评论(0) 推荐(0)