----前缀和
文章平均质量分 63
扩展的灰
扩展的灰(Extended Ash)
展开
-
Jzoj5409 Fantasy
Y sera 陷入了沉睡,幻境中它梦到一个长度为N 的序列{Ai}。对于这个序列的每一个子串,定义其幻境值为这个子串的和,现在Y sera 希望选择K 个不同的子串并使得这K 个子串的幻境值之和最大。然而由于梦境中的种种限制,这些子串的长度必须在L 到R 之间。你需要告诉她,最大的幻境值之和。对于100% 的数据,有1 此题做法比较神奇,也很好懂,但是很难搞清楚如何去构原创 2017-11-06 20:55:19 · 297 阅读 · 0 评论 -
CDQ分治&整体二分九连测
整体二分好难a CDQ分治&整体二分九连: A[适者] 先来一个不是cdq分治的题(虽然也可以用分治做) 首先先来考虑按照什么顺序来搞掉这些机甲 对于两个相邻的机甲i,j,先i后j的代价是Ai∗Di+(Di+Dj)∗AjAi∗Di+(Di+Dj)∗AjA_i*D_i+(D_i+D_j)*A_j 那么如果i应该比j先消灭就有 Ai∗Di+(Di+Dj)∗Aj<A...原创 2018-08-19 21:32:06 · 571 阅读 · 0 评论 -
51Nod1472 取余最大值
题目看这里 又是一个七级题目 妥妥的分治啊,枚举右端点,左边分两段计数就好啦~ 关于标解: 网上好像很多都是前缀和+二分之类的,反正应该差不多快吧 #include<stdio.h>#include<string.h>#include<algorithm>#define N 300010#define LL long longus...原创 2018-08-01 14:15:56 · 319 阅读 · 0 评论 -
51Nod1592 数列积
题目看这里 无比暴力的大分块,极端不优美 听说很多人用莫队水过去了,我还是被最后一个点卡WAing(本地都过了) 说下解法: 首先,将整个序列分块,分成n−−√n\sqrt{n}块 将区间分成三个部分:前面多出来的+中间若干整块+后面多出来的 价值就可以这样计算:中间若干块+前面部分自身价值+后面部分价值+前面和后面与中间产生的价值+前面和后面产生的价值 分别考虑每一个部分怎么计...原创 2018-08-01 09:04:38 · 204 阅读 · 0 评论 -
51Nod1158 全是1的最大子矩阵
题目看这里想到了NOIP普及组当年那道题做法非常显然,O(n^2)枚举矩形的上下边界,让后用一个dp+前缀和就搞定了f[i]表示以第j列作为结尾的最大子矩形的宽,那么如果第i列在[l,r]的范围都是1,那么f[i]=f[i+1],否则f[i]=0答案就是max{(r-l+1)*f[i]}#pragma GCC opitmize("O3")#pragma G++ opitm原创 2018-04-27 17:19:44 · 280 阅读 · 0 评论 -
51Nod1426 沙拉酱括号
题目看这里我们考虑怎样得到最大答案首先对原序列进行括号配对,没有配对上的那些可以直接扔掉不影响答案让后我们有一个合法的括号序列当一对括号与区间有相交但是不包含整个区间时,将会产生一个位置的浪费(在区间内的那个左括号或者右括号没法配对了),所以答案-1那么一个区间的答案[l,r]应该是r-l+1-与这个区间相交的括号对数+包含这个区间的括号对数(会被减重)求相交的个数可以前缀原创 2018-02-22 21:41:02 · 218 阅读 · 0 评论 -
Jzoj4209 已经没有什么好害怕的了
小Y 最近开始学习算法姿势,但是因为小R 非常BB,给了她很多B6 题,所以她觉得自己已经没有什么前途了。于是小R 给了她一些稍微简单的题,让她觉得已经没有什么好害怕的了,其中一道是这样的:给定一个长度为n 只包含左括号和右括号的序列,现在小R 想要知道经过每一个位置的合法子串有多少个。空串是一个合法的串,如果A 和B 都是合法的串,那么(A) 和AB 都是合法的串。 n又原创 2018-01-17 12:13:13 · 537 阅读 · 0 评论 -
Jzoj4770 闭门造车
自从htn体验了一把飙车的快感,他就下定决心要闭门造车!但是他两手空空怎么造得出车来呢?无奈的他只好来到了汽车零部件商店。一走进商店,玲琅满目的各式零件看得htn眼花缭乱。但是他很快便反应过来:我只要买一套好的零件就行。首先它们的性能差不能太大,否则汽车的兼容性不好,开着开着就损坏了;其次,当然是越便宜越好了!为了打造一辆顶级跑车,htn陷入了沉思……现在商店中有 N 件零件,给出这 N原创 2017-11-24 18:21:16 · 253 阅读 · 0 评论 -
Jzoj5231 序列问题
给你序列A,定义f(l,r)=max{al,al+1,....,ar} , g(l,r)=min{al,al+1,....,ar}求ΣΣf(i,j)*g(i,j) { i∈[1,n],j∈[i,n] }哇第一道cdq分治的题诶,当时好像还不会这个玩意2333我们cdq分治一下,先求出[1,mid]和[mid+1,r]的答案让后我们考虑枚举j∈[mid+1,r]对于每一个j,我们原创 2017-11-15 21:39:56 · 465 阅读 · 0 评论 -
Jzoj5440 【NOIP2017提高A组冲刺11.1】背包
蛤布斯有n种商品,第i种物品的价格为ai,价值为bi。有m个人来向蛤布斯购买商品,每个人每种物品只能购买一个。第j个人有cj的钱,他会不停选择一个能买得起的价格最高的商品买走(如果有多个则选择价值最高的)。你需要求出每个人购买的物品的价值和。先吐槽几句,今天的题十分坑,第二题是遗忘多时的搜索:迭代加深,考场上勉勉强强打了个bfs还是挂了第三题是从来没有见过的dp,在图的dfs树上做三进制状原创 2017-11-01 15:54:05 · 595 阅读 · 0 评论 -
Jzoj2934 字符串函数
首先显然不能每个串暴力,我们考虑单独计算每一个字符的贡献对于b[i],若我们找到a[j]=b[i],可以分两种情况讨论1.i所以贡献就是i*j2.i>j 情况是对称的,所以贡献是(n-i+1)*(n-j+1)所以对于原创 2017-09-20 21:48:34 · 388 阅读 · 0 评论 -
Jzoj5417 方阵
题目背景 热烈庆祝北京师范大学附属实验中学成立100周年!问题描述 为了准备校庆庆典,学校招募了一些学生组成了一个方阵,准备在庆典上演出。 这个方阵是一个n*m的矩形,第i行第j列有一名学生,他有一个能力值Aij。 校长会定期检查一个p*q的方阵,询问这个方阵的学生能力值之和,或是学生能力值的最大值,或是学生能力值的最小值。由于校长不原创 2017-11-07 07:41:48 · 356 阅读 · 0 评论 -
Jzoj5410 小型耀斑
Uthuso 的核反应失控了,她在地灵殿释放了几颗大核弹.地灵殿可以看做一个大小为n*m 的矩阵.一颗大小为k 的核弹,对于任意一个与爆炸中心曼哈顿距离小于k 的地区,会造成(k-(该地区到爆炸中心曼哈顿距离))*(该地区的价值)的损失.现在,地灵殿方面想统计一下每颗核弹造成的损失,请你来帮忙计算.哇我十月都在做些什么毒瘤题啊这个题读者可以稍微思考一下再看,因为下面的东西会很难看这个题原创 2017-11-06 21:14:55 · 324 阅读 · 0 评论 -
状压DP十六连测
DP应该先学插头 状压DP十六连 A[寿司晚宴] 开始想到了反演,设f(d)f(d)f(d)表示两边选出来的公因数为d的方案数,设F(d)F(d)F(d)… 好的介绍一个套路,按照最大的质因子分类(没错这不是洲阁筛) 我们发现小于500−−−√500\sqrt{500}的质数只有8个,可以搞一个2162162^{16}的状态表示一种方案 让后,我们设T(x)T(x)T(x)表示x...原创 2018-08-28 09:33:27 · 408 阅读 · 0 评论