前缀 区间

题解 P9963【[THUPC 2024 初赛] 前缀和】

注意到,\(x_i\) 取 \(k\) 的概率是 \(p(1-p)^{k-1}\),是和为 \(1\) 的等比数列,下面考察数列前缀和的性质。 不难想到,概率每次乘以 \(1-p\) 像是概率的分步乘法,每一步正是加一的操作。于是可以得到如下转化:初始时 \(S=0\),每一时刻 \(S\) 先增加 ......
题解 初赛 前缀 P9963 THUPC

题解 P9963【[THUPC 2024 初赛] 前缀和】

注意到,\(x_i\) 取 \(k\) 的概率是 \(p(1-p)^{k-1}\),是和为 \(1\) 的等比数列,下面考察数列前缀和的性质。 不难想到,概率每次乘以 \(1-p\) 像是概率的分步乘法,每一步正是加一的操作。于是可以得到如下转化:初始时 \(S=0\),每一时刻 \(S\) 先增加 ......
题解 初赛 前缀 P9963 THUPC

线段树与历史最值和区间最值问题

线段树与历史最值问题 P4314 CPU 监控 Description 给定数组 \(\{a_i\}\),维护以下操作。定义一个辅助数组 \(\{b_i\}\),每次操作完后令 \(b_i=\max(a_i,b_i)\)。 查询 \(\max_{i=l}^{r} a_i\)(区间最值) 查询 \(\ ......
线段 区间 问题 历史

字符串篇(leetcode—最长公共前缀)

字符串 百度百科:字符串或串(String)是由数字、字母、下划线组成的一串字符。一般记为 s="a1a2···an"(n>=0)。它是编程语言中表示文本的数据类型。 常用函数 比较函数 C++、Python等支持运算符重载的语言——可以使用 == 来比较两个字符串 JAVA等不支持运算符重载——可 ......
前缀 字符串 字符 leetcode

区间区间并

区间区间并 对于区间区间并这类问题,可以枚举某个段看是否被统计 但存在类问题不好统计 我们考虑转化为求和形式: 即** 在范围内包含这个段的区间个数-相邻两个都在范围内且包含这个区间的个数** ,这样可以用类似扫描线、差分的方式来统计 几道类似题: 差分+双指针维护 扫描线+树状数组 ......
区间

莫比乌斯函数平方前缀和

考虑求\(\sum_{i=1}^n\mu(i)^2\) 结论是\(\mu(i)^2=\sum_{j^2|i}\mu(j)\) 考虑证明这个式子。 先证明若\(\mu(i)\neq 0\)此时\(\mu(i)^2=1\) 显然只有\(j=1\)在右式造成贡献\(1\)等式成立。 若存在\(j\neq ......
前缀 函数

枚举子集&高维前缀和学习笔记

枚举子集 首先 \(n\) 位二进制数可以表示一个大小为 \(n\) 的集合的所有子集。接下来的问题均用二进制数展开。 一种暴力的想法是枚举所有数然后判一下是否满足条件,单次时间复杂度 \(O(2^n)\),对所有数做一遍就是 \(O(4^n)\)。 发现有很多枚举是无用的,考虑怎么样让每次枚举出来 ......
高维 子集 前缀 笔记 amp

前缀和,差分,二叉堆

目录前缀和一维数组前缀和二维数组前缀和差分二叉堆 前缀和 一维数组前缀和 代码如下: 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[ ......
前缀

闭区间上连续函数的基本定理

![](https://img2023.cnblogs.com/blog/2702872/202312/2702872-20231216221223782-1965230898.jpg) ![](https://img2023.cnblogs.com/blog/2702872/202312/2702... ......
连续函数 定理 区间 函数

56. 合并区间

1.题目介绍 以数组 \(intervals\) 表示若干个区间的集合,其中单个区间为 \(intervals[i] = [starti, endi]\) 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间 。 示例 1: 输入:intervals = [[1, ......
区间 56

区间素数筛模板

例题素数密度 template<typename T> struct segment_sieve { vector<bool> is_prime, is_prime_small; vector<T> prime; segment_sieve() { is_prime.resize(1000010); ......
素数 区间 模板

R语言 Lasso系数置信区间计算

真是神了奇了,还能被审稿人问到Lasso系数的置信区间的信息,还好有现成的工具可以计算 # load library library(selectiveInference) library(xlsx)library(glmnet) # load datasetwd("E:\\UAI_Program\ ......
区间 系数 语言 Lasso

刷题 ST表、单调栈、线段树->区间最值

2023.12.13 cf1904D2 解题思路 首先,a[i]大于b[i]时肯定不行,等于就满足了,直接过掉 其次,要想使得a[i]等于b[i],就要在a[i]左右找最近的j使得a[j]=b[i](最近的最优,可证) k是i和j中间的一个数,想要满足题意,要满足以下两个条件(a[j]=b[i]) ......
线段 区间 gt

ST表 RMQ(区间最大/最小值查询)问题

主要应用倍增思想预处理:O(nlogn) 查询:O(1)f[i][j]是以i为起点,长度为2j的区间中的最大值(一个点一个单位长度,不是一条线段)区间终点:i+2j-1<=n区间长度的指数k=log2(r-l+1),只有当r-l+1为2n-1时是恰好分割,其他时候有重叠,但问题不大 代码 #incl ......
区间 问题 RMQ

【线段树入门】P3353 在你窗外闪耀的星星(区间求和)

这题正解是前缀和,我用线段树练练手>< 1 1 //笔记-自用 2 2 //#pragma GCC optimize("Ofast") 3 3 //#pragma GCC optimize("unroll-loops") 4 4 #define _CRT_SECURE_NO_WARNINGS 5 5 ......
线段 区间 星星 P3353 3353

【线段树入门】 P1198 最大数(区间最大值+无懒标记+末尾插入)

1 //笔记-自用 2 //#pragma GCC optimize("Ofast") 3 //#pragma GCC optimize("unroll-loops") 4 #define _CRT_SECURE_NO_WARNINGS 5 #define All(a) a.begin(),a.en ......
线段 最大值 末尾 区间 标记

线段树入门】P3870 开关(区间异或和)

1 // 2 //#pragma GCC optimize("Ofast") 3 //#pragma GCC optimize("unroll-loops") 4 #define _CRT_SECURE_NO_WARNINGS 5 #define All(a) a.begin(),a.end() 6 ......
线段 区间 P3870 3870

【线段树入门】P3373 线段树 2(区间乘加)

//笔记-自用 //#pragma GCC optimize("Ofast") //#pragma GCC optimize("unroll-loops") #define _CRT_SECURE_NO_WARNINGS #define All(a) a.begin(),a.end() #defin ......
线段 区间 P3373 3373

【算法】【线性表】最长公共前缀

1 题目 给k个字符串,求出他们的最长公共前缀(LCP) 样例 1: 输入: k个字符串 = ["ABCD", "ABEF", "ACEF"] 输出: "A" 解释:公共最长前缀是"A". 样例 2: 输入: k个字符串 = ["ABCDEFG", "ABCEFG", "ABCEFA"] 输出: " ......
前缀 线性 算法

排序合并区间

题目 合并区间 以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间 。 示例 1: 输入:intervals = [[1,3],[2,6 ......
区间

第 375 场周赛(滑动窗口,区间合并)

使用差分的思想进行解决 class Solution: def countTestedDevices(self, batteryPercentages: List[int]) -> int: diff = 0 for x in batteryPercentages: if x > diff: dif ......
区间 375

线段树模板区间加(含懒标记)

const int N = 1e5 + 10; int n, m; int a[N]; struct Tree{ int l,r; ll sum,add; }tr[4*N]; void build(int u,int l,int r){ // l=tr[u].l;r=tr[u].r; //注释掉的部 ......
线段 区间 标记 模板

2023南海区区赛模拟(初中组)T3删除区间

第3题 删除区间 查看测评数据信息 开始给你N个元素的数组(下标从1开始),数组里的数是1,2,3,…,N,然后执行D次删除操作。每次删除操作给一个区间[lo, hi],要求删除下标位置从lo到hi的数,数组里的数据个数会减少hi-lo+1个。 例如,N=8,第1次删除操作区间是[3 4],结果为” ......
初中组 区间 初中 2023

AcWing 802. 区间和

题面: 假定有一个无限长的数轴,数轴上每个坐标上的数都是 \(0\) 。 现在,我们首先进行 \(n\) 次操作,每次操作将某一位置 \(x\) 上的数加 \(c\) 。 接下来,进行 \(m\) 次询问,每个询问包含两个整数 \(l\) 和 \(r\) ,求出在区间 \([l,r]\) 之间的所有 ......
区间 AcWing 802

高维前缀和

对于求高维前缀和,我的理解是在维度数乘总点数的复杂度下求前缀和。 首先可以先看看二维前缀和。 如果使用容斥的方法,像这样: for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ f[i][j]=a[i][j]+f[i-1][j]+f[i][j-1]-f[i-1] ......
高维 前缀

刷题 字典树 LCP(最长公共前缀)

2023.12.5 cf 1902E 字典树的功能 根据字典树的概念,我们可以发现:字典树的本质是把很多字符串拆成单个字符的形式,以树的方式存储起来。所以我们说字典树维护的是”字典“。那么根据这个最基本的性质,我们可以由此延伸出字典树的很多妙用。简单总结起来大体如下: 1、维护字符串集合(即字典)。 ......
前缀 字典 LCP

2023年广东工业大学腾讯杯新生程序设计竞赛不知道叫什么名字(前缀和)

需要的是男生女生数量相同,做个转化,女生变成-1,然后求一遍前缀和,我们希望找到最长的满足\(sum(l, r)=0\)的区间也就是\(sum(r) - s(l - 1) = 0\) 考虑枚举右端点,找到最左端和它相等的sum就是对于当前右端点的最长的。 最开始想了个二分答案的假做法,011100, ......

前缀和/差分——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]; ......
基础课 前缀 算法 基础 笔记

P8111 [Cnoi2021] 区间

[Cnoi2021] 区间 题目背景 Cirno 有一个区间 \([a,b](1\le a \le b \le n)\),而你的任务是在规定的次数内帮 Rumia 猜出这个区间。 每次,你可向Cirno询问一个数字 \(k\),而 Cirno 会告诉你这个数字与区间 \([a,b]\) 的关系。 题 ......
区间 P8111 8111 2021 Cnoi

Luogu P6292 区间本质不同子串个数

给定字符串 \(S\),\(m\) 次询问 \(S_{l_i}S_{l_i + 1} \cdots S_{r_i}\) 中本质不同的字符串个数。 \(|S| \le 10 ^ 5, m \le 2 \times 10 ^ 5\)。 考虑将询问离线,右端点扫描线,维护 \(f_l\) 为 \(S_l ......
区间 个数 本质 Luogu P6292
共528篇  :2/18页 首页上一页2下一页尾页