组合数学 题解 序列 算法

2024/1/13 算法笔记

1.二分查找的原则 当要查找的值target>mid 就在mid和right中查找 当要查找的值target<mid就在left和mid中查找 对于边界条件的处理: while(l<r) mid的取值是[l,r) 重点是下面部分,直接决定使用哪个二分模板。 1.3 中间值归属问题 这个问题其实比较灵 ......
算法 笔记 2024 13

代码随想录 day18 找树左下角的值 路径总和 从中序与后序遍历序列构造二叉树

找树左下角的值 最简单就是想到层序遍历之后取第一个位置元素就是了 递归的话需要先判断哪里最深的节点 至于最左 保持中左右的遍历顺序 第一次得到最大深度处就是最左的 路径总和 有点像查找子树路径 所以递归回溯是比较好的选择 在求路径的适合,targetSum - node->val 是否为0的判断比一 ......
随想录 总和 序列 随想 路径

AT_arc125_c [ARC125C] LIS to Original Sequence 题解

题目传送门 前置知识 贪心 | 构造 解法 对于任意一个未加入序列 \(P\) 的数 \(x<A_{i}(1 \le i \le k-1)\),如果其放在了 \(A_{i}\) 的前面,会导致最长上升子序列长度加一,从而不符合题目要求。因此我们需要把 \(x\) 放在 \(A_{i}\) 后面,同理 ......
题解 125 Original Sequence AT_arc

P5321 [BJOI2019] 送别 题解--zhengjun

由于大家的做法需要大量分类讨论和代码量,这里提供一种不怎么分类的,容易实现的做法。 首先,由于墙体会随时变化,所以直接对墙体本身维护不是很方便。 我们可以牺牲一点常数,对 \((i,j)\) 建立四个点 \(UL_{i,j},UR_{i,j},DL_{i,j},DR_{i,j}\) 分别表示 \(( ......
题解 zhengjun P5321 5321 2019

Openharmony 跑 CV 算法

最近有个项目,老同学让帮忙验证一个在ARM 板上跑 OpenHarmony,然后再集成一个CV算法上去,写这个文章主要是整理一下思路。如果有思路不对的地方,也烦请指出。 1. 个人做纯软件比较多,所以想着先不用板子,找个仿真环境,网上查了下,Qemu这个工具挺主流,那就先选它了,先跑起来这个 (On ......
算法 Openharmony CV

.NET中的加密算法总结(自定义加密Helper类续)

.NET中的加密算法总结(自定义加密Helper类续) 1.1.1 摘要 相信许多人都使用过.NET提供的加密算法,而且在使用的过程我们必须了解每种加密算法的特点(对称或非对称,密钥长度和初始化向量等等)。我也看到过很多人写过.NET中加密算法总结,但我发现个别存在一些问题,很多人喜欢罗列每种加密算 ......
算法 Helper NET

算法练习题

目录柯里化实现柯里化函数柯里化函数作用扁平化[双指针]有序数组合并判断一个字符串是否是回文字符串[字符串]两个版本号 version1 和 version2版本号大小比较排序 ['1.45.0','1.5','6','3.3.3.3.3.3.3'] => ['1.5','1.45.0','3.3.3 ......
练习题 算法

算法学习Day26组合总和、分割回文串

Day26组合总和、分割回文串 By HQWQF 2024/01/13 笔记 39. 组合总和 给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的数字可以无限制重复被选取。 ......
回文 总和 算法 Day 26

P9007 [入门赛 #9] 最澄澈的空与海 (Hard Version) 题解

Upd on 2023.10.14 08:21:修改了推式子和题意的一些小错误。 前言 一道恐怖的绿题。显然我认为应该是蓝题。(不过在这篇题解写到一半的时候升蓝了,感谢 @StudyingFather。) 名字挺好的。 题意 给定 \(n\),求出满足以下条件的三元组 \((x, y, z)\) 的 ......
题解 Version P9007 9007 Hard

P2198 杀蚂蚁 题解

题目大意 有一条长度为 \(n\) 个单位长度的路,蚂蚁们要从起点走到终点。蚂蚁们每走 \(1\) 个单位距离需要 \(T\) 秒钟。现在,出题人可以在路上修筑 \(3\) 种防御塔来阻挡蚂蚁的进攻,每个单位距离只能修筑 \(1\) 座塔,塔的作用分别如下: 激光塔:蚂蚁在塔前时每秒会受到 \(r\ ......
题解 蚂蚁 P2198 2198

P3243 [HNOI2015] 菜肴制作 题解

前言 今天考试考到这道题,挂惨了。 题意 有 \(n\) 道菜肴,编号为 \(1 \sim n\)。有 \(m\) 个条件,形如 \((i, j)\),表示菜肴 \(i\) 必须在菜肴 \(j\) 之前制作。需求出一个菜肴的制作顺序,满足: 在满足所有限制的前提下,\(1\) 号菜肴尽量优先制作。 ......
题解 菜肴 P3243 3243 2015

(坚持每天写算法)基础算法复习与学习part1基础算法1-7——高精度减法(处理t=1和t>1代码的写法,t为操作次数)

题目: 思路:这一道题其实和高精度加法的思路是差不多的,都是使用算式进行模拟。 重点:关于代码怎么写,在高精度加法那里还看不太出来(我也没有写),但是在高精度减法这里就完全可以看出来了。我们在加法算式里面,一般是A[i]+B[i]+t,但是也可以这么写:t+A[i]+B[i],我们可以先写进位,然后 ......
算法 基础 高精 减法 写法

【SPFA】最短路的一种算法

SPFA算法是在bellman-ford算法基础上优化而来,所以我们先讨论bellman-ford算法 bellman-ford算法的核心是‘松弛’。那么什么是松弛呢?以下图为例: 假设数组d[i]表示源点s到达结点i的最短路径长度,那么松弛指的就是当d[a] + w < d[b],也就是说,这时候 ......
算法 SPFA

AT_abc243_g [ABC243G] Sqrt题解

题目大意 有一个数列,初始时只有一个数 \(X\)。你可以对它进行一种操作:设末尾的数为 \(Y\),从 \(1 \sim \sqrt{Y}\) 中选一个数加到数列的末尾。如此进行 \(10^{100}\) 次操作,问数列一共有多少种可能的状态。 解法 考虑 DP。 设 \(dp_i\) 表示以数字 ......
题解 243 AT_abc 243G Sqrt

AT_abc243_g [ABC243G] Sqrt题解

题目大意 有一个数列,初始时只有一个数 \(X\)。你可以对它进行一种操作:设末尾的数为 \(Y\),从 \(1 \sim \sqrt{Y}\) 中选一个数加到数列的末尾。如此进行 \(10^{100}\) 次操作,问数列一共有多少种可能的状态。 解法 考虑 DP。 设 \(dp_i\) 表示以数字 ......
题解 243 AT_abc 243G Sqrt

【LeetCode 2701. 连续递增交易】MySQL用户变量编程得到严格递增连续子序列的开始位置,结束位置,长度等统计信息

题目地址 https://leetcode.cn/problems/consecutive-transactions-with-increasing-amounts/ 代码 # Write your MySQL query statement below with t1 as( select * # ......
位置 序列 变量 长度 LeetCode

P9754 题解

题意 不难理解,不多赘述。 思路 首先考虑对于性质 A 的情况,我们可以这样做: 定义一个代表变量的结构体,里面存几个参数:首先肯定要存种类(\(type\))和名称(\(name\)),其次为了方便,我们把该变量的大小(\(siz\)),起始位置(\(fir\))和对齐要求(\(mx\))也存了。 ......
题解 P9754 9754

AT_arc167_e 题解

题意 给定 \(k\) 和一个排列 \(P'\),问有多少个排列 \(P\) 以最少步数交换相邻两个元素来进行收敛,最终的排列可能是 \(P'\),一个排列是收敛的当且仅当对于每一个数,在该数前且比这个数大的数的个数不超过 \(k\) 个。 思路 考虑正向的让一个排列收敛,我们设在第 \(i\) 个 ......
题解 AT_arc 167 arc AT

AT_agc054_c 题解

题意 给定 \(k\) 和一个排列 \(P'\),问有多少个排列 \(P\) 以最少步数交换相邻两个元素来进行收敛,最终的排列可能是 \(P'\),一个排列是收敛的当且仅当对于每一个数,在该数前且比这个数大的数的个数不超过 \(k\) 个。 思路 考虑正向的让一个排列收敛,我们设在第 \(i\) 个 ......
题解 AT_agc 054 agc AT

AT_cf17_final_j 题解

题意 给定一棵既有点权也有边权的树,构造一个完全图,图中两点间边的边权为树中两点点权之和加上两点间的距离,求该图的最小生成树。 思路 发现完全图总边数太大,考虑减少边数。 这里有一个性质: 如果在一个图中选取任意个联通的边集,使得它们的并为全集,则整个图的最小生成树中的边一定在 分割后的两个边集的最 ......
题解 final_j AT_cf final AT

UVA11380 题解

题意 一个 \(n\times m\) 的区域内,有以下 \(5\) 种地形: ~:无法通行。 .:只能通行 \(1\) 次。 @:可以通行 \(+\infty\) 次。 *:初始有一个人的 .。 #:安全位置,可以通行 \(+\infty\) 次,但至多能容纳 \(p\) 个人。 人每次可以走到相 ......
题解 11380 UVA

UVA12125 题解

题意 二维平面内有 \(n\) 个冰块,给出冰块的坐标,冰块上的企鹅数和最大跳出次数,企鹅可以在冰块间跳跃,每次跳跃的距离不能超过 \(d\),问哪些冰块可以让所有企鹅跳到上面? 思路 网络流,由于每个冰块有跳出次数限制,所以把一个冰块拆成入点和出点,入点向出点连一条流量为最大跳出次数的边,由源点向 ......
题解 12125 UVA

CF1900E 题解

题意 给你一张有向图,点有点权,现进行以下操作直到无法进行: 选择两条首尾相连的边 \((a,b)\) 和 \((b,c)\) 且 \(a\) 与 \(c\) 间没边,添加边 \((a,c)\)。 求操作完后图中最长的 不经过重复点的路径,并求这种路径中经过的点的点权和最小值。 思路 先考虑 DAG ......
题解 1900E 1900 CF

CF1896E 题解

题意 给一个 \(n\) 阶全排列 \(a\),每次把不满足 \(a_i = i\) 的 \(a_i\) 向右循环移位一位,问从移位多少次后起所有 \(i \in [1,n]\) 都满足 \(a_i = i\)。 思路 先断环成链后再复制一次,可以发现此时的移位等价于向右移位。发现一条性质:若 \( ......
题解 1896E 1896 CF

CF713D 题解

题意 给一个 \(01\) 矩阵,多次求在给定区间内最大的全 \(1\) 正方形边长。 思路 容易想到二分: 先预处理出以每个位置为右下角的最大合法正方形的边长 \(mx_{i,j}\),然后对于每个询问,我们二分边长 \(mid\),设当前询问的区间左上角为 \((x_1,y_1)\),右下角为 ......
题解 713D 713 CF

python经典有序序列的list列表推导式

生成一个数据列表 # 初始化一个列表 list_1 = [] # 使用循环生成一个列表数据 for val in range(0,20,1): # 加入集合 list_1.append(val) # 打印列表数据 print(list_1) # [0, 1, 2, 3, 4, 5, 6, 7, 8, ......
序列 经典 python list

UVA11380 题解

题意 一个 \(n\times m\) 的区域内,有以下 \(5\) 种地形: ~:无法通行。 .:只能通行 \(1\) 次。 @:可以通行 \(+\infty\) 次。 *:初始有一个人的 .。 #:安全位置,可以通行 \(+\infty\) 次,但至多能容纳 \(p\) 个人。 人每次可以走到相 ......
题解 11380 UVA

UVA12125 题解

题意 二维平面内有 \(n\) 个冰块,给出冰块的坐标,冰块上的企鹅数和最大跳出次数,企鹅可以在冰块间跳跃,每次跳跃的距离不能超过 \(d\),问哪些冰块可以让所有企鹅跳到上面? 思路 网络流,由于每个冰块有跳出次数限制,所以把一个冰块拆成入点和出点,入点向出点连一条流量为最大跳出次数的边,由源点向 ......
题解 12125 UVA

CF1900E 题解

题意 给你一张有向图,点有点权,现进行以下操作直到无法进行: 选择两条首尾相连的边 \((a,b)\) 和 \((b,c)\) 且 \(a\) 与 \(c\) 间没边,添加边 \((a,c)\)。 求操作完后图中最长的 不经过重复点的路径,并求这种路径中经过的点的点权和最小值。 思路 先考虑 DAG ......
题解 1900E 1900 CF

【GDKOI 2024 TG Day2】染色(set) 题解

发现我们给一个点染上色后有: 我们称这是一个大小为 1 的十字。 进一步地,我们给这 5 个点再次染上色后有: 我们称这是一个大小为 2 的十字。 同理可得,我们给这 5 个点染上相同的大小为 2 的十字,可得一个大小为 4 的十字: 假设我们图的边长为 \(N=2^n\),我们只需要染上一个大小为 ......
题解 GDKOI 2024 Day2 Day
共10900篇  :1/364页 首页上一页1下一页尾页