前缀和
!
fffefw
这个作者很懒,什么都没留下…
展开
-
牛客小白月赛5 区间 (interval)
传送门 题目大意就是给你长度为n的区间,然后有m次操作,操作完了再查询区间和。 做法就是用前缀和和差分,这是我第一次用差分,首先设一个change数组用来存每个位置的变化值,先清0,假如是修改[l,r]区间,该区间每个数加p的话,c[l]+=p,c[r+1]-=p,之所以不是直接c[l]=p,c[r+1]=-p,是因为可能修改不止是一次,当然m次操作完了之后,此时c[i]还不是a[i]...原创 2018-07-23 09:20:25 · 162 阅读 · 0 评论 -
Codeforces Round #529 (Div. 3) E. Almost Regular Bracket Sequence
题目大意就是给一个长度为n括号序列,然后问你有几个位置,你将该位置的括号反转之后,这个括号序列可以变成合法的括号序列。合法的括号序列定义就是 1.括号序列里左右括号数量相等 2.对于i位置对应的前缀里左括号数量>=右括号数量(1<=i<=n)先设左括号为1,右括号为-1,然后求出括号序列对应的前缀和数组a假设要将pos位置的左括号改成右括号是满足条件的。那么必有 ...原创 2019-01-01 22:57:49 · 372 阅读 · 0 评论 -
2019中山大学程序设计竞赛(重现赛)
Triangle题意:给你n个木棒,判断其能否组成三角形。这题就是斐波那契数数列的应用,把斐波那契数列打出来,可以知道第47项就大于2^31-1了,于是的话,最长的不能构成三角形的序列的长度就是46了,若序列长度>=47,那就必有一个长度>=2的区间不满足斐波那契数列,那就可以构成,若序列长度<47就暴力判断。#include<bits/stdc++.h>...原创 2019-04-23 20:46:47 · 780 阅读 · 0 评论