码迷,mamicode.com
首页 >  
搜索关键字:区间    ( 16036个结果
tyvj 1198 矩阵连乘——区间dp
题目描述 一个n*m矩阵由n行m列共n*m个数排列而成。两个矩阵A和B可以相乘当且仅当A的列数等于B的行数。一个N*M的矩阵乘以一个M*P的矩阵等于一个N*P的矩阵,运算量为n*m*p。 矩阵乘法满足结合律,A*B*C可以表示成(A*B)*C或者是A*(B*C),两者的运算量却不同。例如当A=2*3 ...
分类:其他好文   时间:2020-05-08 09:53:24    阅读次数:76
CF149D Coloring Brackets
"Link" 给一个合法的括号序列。求满足以下条件的染色方案。 1.一个括号可以染红色、蓝色或不染色 2.一对匹配的括号需要且只能将其中一个染色 3.相邻两个括号颜色不能相同(但可以都不染色) 求符合条件的染色方案数(对1000000007取模) 输入: 一行,表示括号序列 输出: 一个数表示方案数 ...
分类:其他好文   时间:2020-05-08 09:30:46    阅读次数:48
最大子段和-蛮力法
问题描诉: 给定有n个整数(可能为负整数)组成的序列a1,a2,...,an,求该序列连续的子段和的最大值和区间。 如果该子段的所有元素和是负整数时定义其最大子段和为0。 输入:1 -2 4 5 -2 8 3 -2 6 3 7 -1 输出:32 , [3 , 11] 蛮力法: 时间:O(n3) #i ...
分类:其他好文   时间:2020-05-07 13:52:11    阅读次数:85
LeetCode303. 区域和检索 - 数组不可变
题目描述: 分析:虽然是求区间和,但数组是不可变的,不可变 意思是 不涉及线段树更新操作。因此可以不使用线段树这种复杂的数据结构,对于该题不使用线段树效果更好,初始化是O(n)的复杂度,以后每次调用只需要O(1)的复杂度。 // 不使用线段树的解决方案 class NumArray { privat ...
分类:编程语言   时间:2020-05-07 00:46:03    阅读次数:63
高级数据结构--树状数组
本地搬运~ 关于树状数组的学习,强烈推荐这个视频:https://www.bilibili.com/video/av26371798?from=search&seid=2141442207537065040 1:树状数组:查询和修改复杂度都为log(n)的数据结构,本身可用于单点修改区间查询,加入辅 ...
分类:编程语言   时间:2020-05-06 22:06:50    阅读次数:95
luogu SP1043 GSS1 - Can you answer these queries I
``` //单点修改 pushup //查询区间内的最大字段和 #include #include #include #include using namespace std; const int N = 500010; int n, m; int w[N]; struct Node { //端点 ... ...
分类:其他好文   时间:2020-05-06 20:03:08    阅读次数:53
树状数组
树状数组简单来看就是一个维护前缀和的数据结构,它相当于线段树去掉了所有的右子树,需要查询时,通过信息拼接来达到查询目的,基础应用为 **(单点更新,区间查询)** **(区间更新,单点查值)** (多了个差分) **(区间修改,区间查询)** (通过数学推导得出我们需要维护两个树状数组) 具体内容参 ...
分类:编程语言   时间:2020-05-05 23:35:57    阅读次数:76
【数组】228. 汇总区间
题目: 解答: 就很简单的遍历一遍...中间判断数字是否连续。 1 class Solution { 2 public: 3 vector<string> summaryRanges(vector<int>& nums) 4 { 5 vector<string> ans; 6 for(int i = ...
分类:编程语言   时间:2020-05-05 18:02:35    阅读次数:60
K. Road Widening
$考虑每个区域可行的区间$ $x[1]=s[1]\ \ y[1]=s[1]+g[1]$ $x[i]=max(x[i 1] 1,s[i]),y[i]=min(y[i 1]+1,s[i]+g[i])$ $然后这样能确保每一个区间都满足前面的区间,但不意味前面的区间满足后面的区间$ $倒过来也做一次,之后 ...
分类:其他好文   时间:2020-05-05 17:48:05    阅读次数:43
分块见习
分块初始化: int a[50005];//原始序列 int l[2000];//第i个块的左区间端点 int r[2000];//第i个块的右区间端点 int pos[50005];//第i个点属于第几个块 int n; scanf("%d",&n); int dis=sqrt(n);//每一块的 ...
分类:其他好文   时间:2020-05-05 12:46:01    阅读次数:46
16036条   上一页 1 ... 70 71 72 73 74 ... 1604 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!