树上差分

图论专题-差分约束系统、强连通分量、二分图

图论专题-差分约束系统、强连通分量、二分图 题单 二分图 关押罪犯 看到 最大值最小 的条件首先想到二分,然后问题转化为是否存在一种分配方式,使得所有仇恨值 \(> mid\) 的罪犯分在两间牢房里。 我们不能让所有仇恨值 $ > mid$ 的罪犯对分到一个牢房里,如果把罪犯之间的仇恨关系看作是一条 ......
分量 专题 系统

洛谷P1250 种树 题解 差分约束求最小解集

题目链接:https://www.luogu.com.cn/problem/P1250 题目大意:略 解题思路:差分约束 求 最长路。 关于为什么求最长路可以看一下这边博客:《关于差分约束系统中跑最长路还是最短路的澄清》 博客的核心思想就是一句话: 要想求最小解集跑最长路;要想求最大解集跑最短路。 ......
题解 P1250 1250

【杂记】有上限的树上背包问题的时间复杂度证明

结论:若树上背包的上限为 \(k(k\le n)\),时间复杂度为 \(O(nk)\)。 参考实现: dfs(u) { sz[u] = 1; init(f[u]); for (v : son[u]) { dfs(v); for (i = 0; i <= k and i <= sz[u]) for ( ......
复杂度 杂记 上限 背包 时间

有上限的树上背包问题的时间复杂度证明

结论:若树上背包的上限为 \(k(k\le n)\),时间复杂度为 \(O(nk)\)。 参考实现: dfs(u) { sz[u] = 1; init(f[u]); for (v : son[u]) { dfs(v); for (i = 0; i <= k and i <= sz[u]) for ( ......
复杂度 上限 背包 时间 问题

差分约束(Differential constraint)

test definition 差分约束系统 是一种特殊的 \(n\) 元一次不等式组,它包含 \(n\) 个变量 \(x_1,x_2\),\(\dots,x_n\) 以及 \(m\) 个约束条件,每个约束条件是由两个其中的变量做差构成的,形如 \(x_i-x_j\leq c_k\),其中 \(1 ......
Differential constraint

差分隐私的原理、优势和应用案例

由于声誉受损或受到法规罚款等因素,数据隐私的侵犯对组织来说代价高昂。根据IBM的2022年数据泄露成本报告,数据泄露的平均总成本接近450万美元。但是许多重要的业务问题仍然需要访问私人信息,这就需要隐私保护,本文介绍2023年被重点关注的隐私保护技术——差分隐私。 ......
隐私 原理 优势 案例

matlab运动目标检测-背景差分算法

clear; clc; i1=imread('D:\Work\1.png'); i2=imread('D:\Work\2.png'); i1=rgb2gray(i1); i2=rgb2gray(i2); [m,n]=size(i1); im1=double(i1); im2=double(i2); ......
算法 背景 目标 matlab

基于FPGA的图像差分运算及目标提取实现,包含testbench和MATLAB辅助验证程序

1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.算法理论概述 基于FPGA(Field-Programmable Gate Array)的图像差分运算及目标提取实现主要涉及图像处理、差分运算和目标提取等原理和数学公式。 一、图像处理原理 图像处理是一种对图像信息进行加工、分 ......
testbench 图像 目标 程序 MATLAB

C++U4-第10课-前缀和与差分

学习目标 前缀和解决的问题 前缀和概念 前缀和构建方式 前缀和主要解决区间求和问题 练习题1:[前缀和] 【算法分析】 前缀和数组 s 的含义是 s[i] 表示 a[1] ~ a[i] 的和 ,那么 ∑ i=l i=r ​ a[i] = s[r]−s[l−1]。 【参考代码】 #include <i ......
前缀 U4

算法差分

import java.util.Scanner; public class Main{ static final int N = 100010; static int[] a = new int[N]; static int[] b = new int[N]; public static void ......
算法

【模版】差分

问题引入:洛谷P2367 班上一共n个学生,语文老师需要对成绩进行p次修改,每次修改需要给第x个学生到第y个学生每个人增加z分,语文老师想知道修改成绩后的最低分。 对于 $40\%$ 的数据,有 $n \le 10^3$。 对于 $60\%$ 的数据,有 $n \le 10^4$。 对于 $80\% ......
模版

离散化,前缀和,差分

离散化,前缀和,差分 一维前缀和和差分之前学过不再记录 二维情况 前缀和 多维前缀和的普通求解方法几乎都是基于容斥原理 例如有这样一个矩阵,可以视为二维数组: 1 2 4 3 5 1 2 4 6 3 5 9 定义一个矩阵\(sum\)使得\(sum_{x,y}=\sum_{i=1}^{x}\sum_ ......
前缀

差分

P3397 地毯 syoj 1829. 地毯 二维差分板子。 #include<bits/stdc++.h> using namespace std; const int N=1010; int n,m; int a[N][N],s[N][N]; int main(){ scanf("%d%d",& ......

P2664 树上游戏 题解

原题链接:P2664。 题意:给定一棵树,每个点都有一个颜色 \(c_{i}\)。对于每一个点 \(i\),求出 \(\sum_{j=1}^{n}s(i,j)\) 的值。其中 \(s(i,j)\) 表示点 \(i\) 到点 \(j\) 的颜色数量。 路径相关,考虑点分治。 假设当前的重心为 \(u\ ......
题解 P2664 2664

【模板】树上启发式合并 dsu on tree

所选例题 模板 点击查看代码 #include<bits/stdc++.h> using namespace std; #define endl '\n' #define pb push_back #define rep(i,a,n) for(int i=a;i<=n;i++) #define pe ......
模板 tree dsu on

前缀和,差分,二叉堆

目录前缀和一维数组前缀和二维数组前缀和差分二叉堆 前缀和 一维数组前缀和 代码如下: for(int i=0;i<n;i++){ if(i==0) y[i]=x[i]; else y[i]=y[i-1]+x[i]; } 或者 for(int i=1;i<=n;i++){ y[i]=y[i-1]+x[ ......
前缀

【杂题乱写】12 月北京省选树上问题专题训练

A. Luogu-P9058 Ynoi 2004 rpmtdq 解密:Range Pair Mininum Tree Distance Query 支配对问题,这里的支配是若 \(L\le l<r\le R\),且 \(\mathrm{dist}(l,r)\le \mathrm{dist}(L,R) ......
专题 问题

【笔记】2023.12.14 树上问题

笔记 2023.12.14:树上问题 [Ynoi2004] rpmtdq 支配对:\(i_1\leq i_2\leq j_2\leq j_1, dist(i_1, j_1)\geq dist(i_2, j_2)\) 时,称 \((i_1, j_1)\) 被 \((i_2, j_2)\) 支配,前者就 ......
笔记 问题 2023 12 14

U41492 树上数颜色 题解

Link U41492 树上数颜色 Question 给出一个树,每个节点有一个颜色,求一个子树内有多少种不同的颜色 Solution 问题可以用树上莫队来解决,但是也可以使用树上启发式合并 先计算并保留重儿子的贡献,然后将轻儿子 "加" 到重儿子的贡献上面 总时间复杂度 \(O(n \log n) ......
题解 颜色 U41492 41492

牛客挑战赛71 B树上博弈

Link 一道很有意思的min-max博弈 用树上dp来解决,那么显然的,当前节点是谁取的会影响答案,\(dp2_{i,j}\)表示取当前阶段,被Alice/Bob取走的结果, 并且这个题是取子树上任意的节点,那么还需要保存子树上的信息,故使用\(dp_{i,j}\)记录下子树中的Alice/Bob ......
挑战赛

差分

P2367 语文成绩 P2367 语文成绩 - 洛谷 暴力模拟过不了,时间复杂度是 \(\operatorname O(n^2)\)。 差分思想 对于数组 \(a\),定义 \(a\) 的差分数组为 \(b\),其中 \(b_1 = a_1, b_i = a_i - a_{i - 1}(2\leq ......

树上启发式合并

树上启发式合并(常常也叫DSU On Tree,但其实和DSU并没有特别大关系),是一种解决某些树上离线问题的算法,尤其常被用于解决“对每个节点,询问关于其子树的某些信息”这样的问题。 假设我们要对树上的每个节点p求ans[p] ,且这个ans[p] 可以通过合并p的子节点的某些信息得知,一般来说我 ......

【模板】差分约束

给出一组包含 \(m\) 个不等式,有 \(n\) 个未知数的形如: \[\begin{cases} x_{c_1}-x_{c'_1}\leq y_1 \\x_{c_2}-x_{c'_2} \leq y_2 \\ \cdots\\ x_{c_m} - x_{c'_m}\leq y_m\end{cas ......
模板

树上启发式合并(dsu on tree)

dsu on Tree(树上启发式合并) 当遇到处理子树询问,并且无修改时。可以考虑树上启发式合并。 算法流程: step1:处理出每个点的 \(siz_x\) 以及重儿子 \(son_x\)。 void dfs(int x, int fa) { siz[x] = 1; int Maxson = 0 ......
tree dsu on

一种简洁且常数较小的在线树上k级祖先求解.

起因是有人在la群问 已知u是v的祖先,求u到v路径上第一个点. 怎么写比较简单. 突然想起很久之前我在la板子上写过一个题解区里没有看到的简洁做法. 有一个不难证明的结论,一个节点u的k级祖先v对应深度的所有节点中dfn序中小于等于u的最后一个点. 考虑dfn序的性质,u一定在v所在的子树的这段区 ......
常数 祖先

差分数组

一、差分定义和性质 首先差分主要是针对一个数组中的元素进行频繁的增加或删除。假设现在有一个数组nums,现在我要对里面的某个区间的元素全部加2, 然后要对另外一个区间全部减1。一般的思路是直接for循环进行遍历,这样的话时间复杂度是O(n),而我们使用差分数组的话时间复杂度为O(1)。 对于一个数组 ......
数组

前缀和/差分——acwing算法基础课笔记

个人笔记,欢迎补充,指正。 一维前缀和 对于数组: a[1],a[2],a[3]...a[n]; 其前缀和数组为 s[i] = a[1] + a[2] + ... + a[i]; 下标必须从1开始 求前缀和 1 for(int i=1;i<n;++i) 2 s[i] = s[i-1] + a[i]; ......
基础课 前缀 算法 基础 笔记

【差分数组】我的日程安排表

一、我的日程安排表 I 题目链接:我的日程安排表 I 实现一个 MyCalendar 类来存放你的日程安排。如果要添加的日程安排不会造成 重复预订 ,则可以存储这个新的日程安排。 当两个日程安排有一些时间上的交叉时(例如两个日程安排都在同一时间内),就会产生 重复预订 。 日程可以用一对整数 sta ......
安排表 数组 日程

#P1090. 树上简单路径

简单的dfs从1节点开始往下深搜,然后回溯记录路径 #include<bits/stdc++.h> using namespace std; const int N=1e4+10; vector<int>a[N]; int n,m; vector<int>p; void dfs(int x,int ......
路径 1090

CCF认证——202109-2 贡献的变化——差分维护,前缀和算答案

https://www.acwing.com/problem/content/4010/ http://118.190.20.162/view.page?gpid=T130 脑子一热抱着玩的心态试了一下三分,当然炸了,就当初认识三分了。 正解是考虑p的变化的影响,p变成p+1的时候,答案的值取决于 ......
前缀 贡献 答案 202109 CCF
共290篇  :1/10页 首页上一页1下一页尾页