简单区间dp。 考虑 $f_{i,j,mn,mx}$表示 $i,j$ 区间的最大值为 $mx$,最小值为 $mn$ 的最小花费,$g_{i,j}$ 为删掉 $[i,j]$ 的最小花费。目标答案:$g_{1,n}$ 我们容易发现这个状态可以由区间 $[L,R 1]$ 和 $[R,R]$ 合并起来,即加 ...
分类:
其他好文 时间:
2020-02-06 01:36:02
阅读次数:
59
http://acm.hdu.edu.cn/showproblem.php?pid=3038 大致题意: 有一个区间[0,n],然后会给出你m个区间和,每次给出a,b,v,表示区间[a,b]的区间和为v,但每次给出的区间可能与之前的有冲突,问这样起冲突的区间共有多少个 首先区间[a,b]的和可由区间 ...
分类:
其他好文 时间:
2020-02-03 19:29:00
阅读次数:
78
题面:给出长度为n的数列,然后算出其区间和乘区间最小数所能得到的最大值,并且输出区间 样例输入: 6 3 1 6 4 5 2 样例输出: 60 3 5 原题链接:https://vjudge.net/problem/UVA-1619 分析: 这里有两种算法,一种是O(nlogn)的,用st表+递归, ...
分类:
其他好文 时间:
2020-02-01 19:29:46
阅读次数:
83
# 题解 CF446C这是一道数据结构题。 我们先翻译下题目: 给你一个n,给你一个长度为n的序列,给你一个m,给你m此操作,包括区间修改和查询,修改为在一个区间内每个数加上他所对应的斐波那契数,查询为查询区间和。 一看到区间修改和区间查询,我们就可以知道这是一道线段树的题目(不要问我怎么知道的,~ ...
分类:
其他好文 时间:
2020-02-01 16:21:14
阅读次数:
80
~~分治FFT的板子为什么要求逆呢~~ "传送门" 这个想法有点$cdq$啊,就是考虑分治,在算一段区间的时候,我们把他分成两个一样的区间,然后先做左区间的,算完过后把左区间和$g$卷积一下,这样就可以算出左区间里的$f$对右边的贡献,然后再算右边的就好了。 手玩一组样例吧: (默认$g[0] = ...
分类:
其他好文 时间:
2020-01-28 10:53:38
阅读次数:
47
树状数组: 一共需要三个函数: ①lowbit(int x) ②add(int x,int p) ③query(int x) 1.动态求连续区间和 给定 n 个数组成的一个数列,规定有两种操作,一是修改某个元素,二是求子数列 [a,b]的连续和。 输入格式 第一行包含两个整数 n 和 m,分别表示数 ...
分类:
编程语言 时间:
2020-01-27 17:24:35
阅读次数:
89
"B题地址:树上逆序对" 有两个思路 方法一:线段树离线 + 树状数组或者线段树维护区间和 0:离散化,离线存储输入的operation操作序列。 ①:先线段树在dfs序上离线处理好整一棵树:在dfs序上先查询"加入当前结点的逆序对权值和"并记录,再加入当前这个节点;dfs完毕后,就已经记录好每个结 ...
分类:
编程语言 时间:
2020-01-25 16:55:25
阅读次数:
91
题意 $n$段区间,要把他们分到两个不同的集合$S,T$中,不能有剩余,每个区间只能在一个集合里,令$S$中所有区间的交的长度为$ls$,$T$中所有区间的交为$lt$,求$max\{ls+lt\}$。 题解 找到 $L$ 最大的区间 $p$ 和 $r$ 最小的区间 $q$,那么只有两种情况: $1 ...
分类:
其他好文 时间:
2020-01-24 18:40:19
阅读次数:
63
题目链接http://acm.hdu.edu.cn/showproblem.php?pid=1166 AC代码 #include<iostream> #include<string> #include <algorithm> #include<cstring> #include<cstdio> us ...
分类:
其他好文 时间:
2020-01-21 20:01:19
阅读次数:
75
一维树状数组维护的是区间和,最后统计的是1~x数的和,而二维树状数组维护的是一个面的和,最后统计的是 (1,1)~(x,y)区域内数的和 (x,y)所维护的面大小由x,y共同决定,x决定高度,y决定宽度 add和query操作的两层循环结合二分图理解比较直观 如何分呢?首先,我们按照X坐标,把整个表 ...
分类:
编程语言 时间:
2020-01-19 00:35:57
阅读次数:
119