摘要:
树状数组: 1.将某一个数加上k 2.求出某区间每一个数的和 #include<bits/stdc++.h> using namespace std; typedef long long ll; ll n,m,a[500000+10]; ll lowbit(ll x){return x&(-x);} 阅读全文
摘要:
最大流(dinic算法)模板 #include<bits/stdc++.h> using namespace std; typedef long long ll; const ll inf=1e18; struct edge{ll v,cap,flow;}; ll n,m,s,t; vector<l 阅读全文
摘要:
题目大意: 给\(n(1\le n\le 10^9)\)的每个数码加一,重复\(m(1\le m\le 2\times 10^5)\)次,求最终结果的长度,询问\(t(1\le t\le 2\times 10^5)\)次。 设\(dp_{i}\)为数字\(0\)经过\(i\)次操作后,得到结果的长度 阅读全文
摘要:
题目大意: 给出长度为\(n(1\le n\le 10^5)\)的数组\(a\),构造数组\(b\)使得\(a_i=MEX\{b_1,b_2,...,b_i\}\) 首先考虑当\(b_1,b_2,...,b_n\)为什么数时,\(a_n=MEX\{b_1,b_2,...,b_n\}\)。 然后再考虑 阅读全文
摘要:
题目大意: 给出一个长度为\(n(1\le n\le 10^{5})\)的序列\(a_1,a_2,...,a_n\),计算\(\sum_{1\le l<r\le n}\sum_{l\le i<j\le r}[a_i=a_j]\) \(\sum_{1\le l<r\le n}\sum_{l\le i< 阅读全文
摘要:
题目大意: 构造两个合法括号串满足指定的位置字符相同且其它位置字符不同。 首先,如果指定位置(相同或不同)数量为奇数,必定无法构造出满足题意的字符串。 另外,如果有指定位置(不同)位于首位或末位,必有一个字符串在此位置的括号无法被匹配,所以在这种情况下无法构造出满足题意的字符串。 根据题目的性质,我 阅读全文
摘要:
题目大意: 若\(i\)为能被\(1,2,......,x-2,x-1\)整除,不能被\(x\)整除,则\(f(i)=x\),计算\(\sum_{i=1}^{n}f(i)\)。 设\(g(x)\)为\(1~n\)中满足条件\(x\)的数的数量,\(k\)为使\(lcm(1,2,......,k)>n 阅读全文
摘要:
题目大意 给出长度为\(n(1\le n\le 2\times 10^5)\)的数组\(a\)和数\(m(1\le m\le 1000)\),求\((\prod_{1\le i\le j\le n}|a_i-a_j|)\mod m\)。 \(n\le m\)时,直接枚举\(i\)和\(j\)计算答案 阅读全文
摘要:
题目大意: 给出一个\(n\)行\(m\)列的地图,地图上存在\(k\)个点需要分别经过其各自的目标位置,你能执行\(2nm\)次以内的操作,每次操作将地图中所有不会出界的点移动一格(上、下、左、右)。求出需要操作的步骤。\((1\le n,m,k\le 200)\) 无论这\(k\)个点在什么位置 阅读全文
摘要:
题目大意: 给定一颗树,每个节点有两个数,为每个节点选择其中一个数,求所有相邻节点所选数之差的绝对值之和。 考虑动态规划。 设\(dp_{u,0}\)为节点i选择较小的数,以节点\(u\)为根的子树对答案的贡献的最大值。 设\(dp_{u,1}\)为节点i选择较大的数,以节点\(u\)为根的子树对答 阅读全文