随笔分类 -  D-dp-结论

摘要:题意 给定长度为$n$的序列${a}$,令一个长度为$k$的子序列${a_,a_,\cdots,a_{i_},a_}\(,令其权值为\)\sum\limits_^k sign(j)*a_$ 对于$i\in [1,n]$,求长度为$i$的子序列最大权值 \(n\in[1,10^5],a_i\in[-1 阅读全文
posted @ 2020-08-30 17:05 Grice 阅读(114) 评论(0) 推荐(0)
摘要:题意 给定长度为$n$的序列${a}$,可以执行操作:给任意一个数加上$2$的幂次,求使得所有数相同的最小操作个数 做法 转化1:给定长度为$n$的序列${a}$,要求给出长度为$n$的序列${b}\(,在\)\forall i,j,a_i+b_i=a_j+b_j$的条件下让$\sum popcou 阅读全文
posted @ 2020-08-22 14:45 Grice 阅读(116) 评论(0) 推荐(0)
摘要:做法 考虑$n-1$的情况 结论1:当$m=n-1$时必然有解 证明: 最小值显然$<k$,找到一个与其配对的,我们猜测若最小值与最大值和$\ge k$ 我们对其以$n$施归纳,那么要使最小值与最大值反复最优,这是无后效性的,故反复令最小值与最大值匹配即可 \(O(nlogn)\) 推论:当$m\g 阅读全文
posted @ 2020-08-22 09:36 Grice 阅读(144) 评论(0) 推荐(1)
摘要:挑几道有意思的讲一下 B 将?换成$0/1$插到trie里面,建两棵tire,一棵表示子树是否有被选的(内向),一棵表示祖先是否有被选的(外向) D 这题很有意思啊 将两种操作定义为睡觉与工作 首先假设先全部选睡觉的,令其价值为$s_i$,那么将睡觉的调整为工作,价值为$e_i-s_i$ 令连续$k 阅读全文
posted @ 2020-06-13 14:39 Grice 阅读(157) 评论(0) 推荐(0)
摘要:不放翻译了,去官网看吧 Floyd-Warshall $O(nmlogm)$算出点对最短路径 按顺序更新$(i=1\sim n)$ 记下$i$到哪些点是没问题的$S$,记下哪些点到$j$的路径是没问题的$T$,然后考虑$i,j$的路径是否能被更新,存在$k\in S\cap T$,且$i\longr 阅读全文
posted @ 2020-06-09 15:48 Grice 阅读(502) 评论(0) 推荐(0)
摘要:题意 log 做法一 结论1:$(j\in[1,i))dis(i,j)$是单调不升的 显然 考虑$i$向左那些点走的方法,$dis(i,j)=1$的这些点显然是直接与$i$相连的 然后发现距离为$2$的那些点方法有点奇怪,既可以$i$向左走两步,也可以$i$向右走一步再向左走一步 对走的方法找一找结 阅读全文
posted @ 2020-06-04 21:42 Grice 阅读(134) 评论(0) 推荐(0)
摘要:题意 有一个$n\times m$的格子,每个格子开始是白色的,每次可以将某一行或某一列染成R/B(覆盖原来的颜色) 现在给定一个$n\times m$的已经经过若干次染色的格子,求从初始状态能否到达现在的状态,若能,最小操作几次 做法 可行:将给定的格子每次找一整行或一整列一样的,然后将其变成通配 阅读全文
posted @ 2020-06-04 14:55 Grice 阅读(152) 评论(0) 推荐(0)
摘要:题意 给定$n,m,k$,求正$n$多边形中选$m$个点构成的凸包恰好有$k$个锐角的方案数。 做法 结论1:若$k>4$,则无解 证明: 凸多边形外角和等于$360^$ 结论2:若$k=3$,仅有可能$m=3$的时候可能有解 证明: $k=3$时,若$m>3$,若有解,则会有两个锐角不相邻,选择一 阅读全文
posted @ 2020-06-03 21:54 Grice 阅读(192) 评论(0) 推荐(0)
摘要:题意 给定$n$长度的序列${a}$,$q$次询问$(l,r,v)$,要求执行 if(l<r) for(int i=l;i<=r;++i) if(a[i]>v) swap(a[i],v); else { for(int i=l;i<=n;++i) if(a[i]>v) swap(a[i],v); f 阅读全文
posted @ 2020-06-02 22:18 Grice 阅读(129) 评论(0) 推荐(0)
摘要:题意 对于一个数组A,通过一个变换为B数组: \(B_1=A_1\),\(B_i=A_i\oplus A_{i-1}(i\in(1,n])\) 现在给定一个B数组,但其已经被打乱了,能否将其重排列满足逆变换后A数组递增 做法 假设B数组已经重排列好了,即$A_k=\bigoplus\limits_^ 阅读全文
posted @ 2020-05-31 10:20 Grice 阅读(187) 评论(0) 推荐(0)
摘要:题意 给定一棵树,及$s,t$,A,B玩游戏,A初始在$s$不想去$t$,B想A去$t$。 A每次在一个点,会选择沿着一条边走过去,走完之后这条边被打上了一个标记,A不能再走了;若A当前所在点的边全部被打上了标记,那就不能动了。 B每次可以选择消除一条边的标记或永久删除一条边。 B先手,花费为执行操 阅读全文
posted @ 2020-05-29 17:09 Grice 阅读(116) 评论(0) 推荐(0)
摘要:题意 $n(even)$张卡牌,带权$s_i(s_i\ge 0)$。 初始时奇数位置属于$A$,偶数位置属于$B$,$n-1$轮操作,\(i=1\sim n-1\),若$i$为奇数则A操作,否则$B$操作,可以反转$iori+1$的所属权,或不操作。 两人博弈,求最后$A$的最大值。 有$m$次单点 阅读全文
posted @ 2020-05-27 16:26 Grice 阅读(72) 评论(0) 推荐(0)
摘要:题意 $n\times n$的矩阵,$a_{i,j}$为整数,令$m=\frac{n+1}{2}$,可以进行若干次操作,将$m\times m$的子矩阵权值取反。求最大权值和。 \(n\le 33\) 做法 令$w_{i,j}\(为\)(i,j)$这个位置最终是否被取反了 对于$(i<m)w_{i, 阅读全文
posted @ 2020-05-25 20:30 Grice 阅读(134) 评论(0) 推荐(0)
摘要:题意 $1,2,3,4,5,6,7,8,9$为好的;若$x\ge 10$(令$y=x/10$),其是好的,当且仅当$y$是好的,且$x\%10 这个建议手玩一下 结论1 :令$rk_x$表示$rk_x\%11$,则$rk_x=(\frac{rk_{\frac{x}{10}}(rk_{\frac{x} 阅读全文
posted @ 2020-05-20 13:08 Grice 阅读(152) 评论(0) 推荐(1)
摘要:题意 "洛谷" 做法 以每个点右边最近的较大值为父亲建森林,森林的根再加上虚点 若已经处理完区间$[l,r]$,增加$r+1$,相当于将$r+1$的子树$+1$;删掉$l 1$,相当于将$l 1$的子树$ 1$ 然后查询最大值 阅读全文
posted @ 2020-05-19 17:16 Grice 阅读(128) 评论(0) 推荐(0)
摘要:题意 "洛谷" 做法 $d=gcd_{i=1}^n(a_i)$ $d=\prod\limits_{i=1}^m p_i^{k_i}$,显然有$d\le 11$ 将$a_i$除$p_1,p_2,...,p_m$的质因子全部除去,则不同的元素仅剩$M\leq 11598$ 当我们修改一个数字时,一定是将 阅读全文
posted @ 2020-05-18 08:35 Grice 阅读(115) 评论(0) 推荐(0)
摘要:题意 洛谷 做法 排序$a_1\le a_2\le ...\le a_\le a_n$ 定义1:\(a_i>2\sum\limits_{j<i}a_j\),则称鱼$i$是肥鱼 令$t$为肥鱼个数 结论1:\(danger\le n-t\) 证明: 考虑每条肥鱼单独与一个集合合并的贡献即可,即便产生了 阅读全文
posted @ 2020-05-17 08:51 Grice 阅读(335) 评论(0) 推荐(0)
摘要:题意 给定$n$个点的带边权树,$m$条代价路径,令两条路径$(u_1,v_1,w_1)(u_)(u_2,v_2,w_2)$,$val=\sum\limits_{(u,v)\in dis(u_1,v_1)~or~(u,v)\in dis(u_2,v_2)}val(u,v) w_1 w_2$。求$ma 阅读全文
posted @ 2020-05-16 14:55 Grice 阅读(243) 评论(0) 推荐(0)
摘要:题意 $n$个位置,\((x_i,y_i)\),\(\forall i,j(i<j)x_i<y_j\),\(val(i,j)=|x_i-x_j|\times min(y_i,y_j)\) 三种操作,修改$i$的横坐标或纵坐标,查询$[l,r]$的最大贡献 数据是随机的 做法 维护$l_i,r_i$为 阅读全文
posted @ 2020-05-14 23:39 Grice 阅读(121) 评论(0) 推荐(0)
摘要:题意 给你一堆石子,$n$个。给定$m$,每次操作如下: 若当前有$k$堆石子,每堆$a_i$个,给每堆指定$b_i$,\(.s.t\sum b_i\le m\),然后把每堆分为两堆$b_i,a_i-b_i$ 求最少操作次数使得最后$n$堆石子,每堆一个 \(T\le 1000,m\le n\le 阅读全文
posted @ 2020-05-13 21:58 Grice 阅读(92) 评论(0) 推荐(0)