2019/8/27 校内模拟赛 考试报告
Posted taylorswift13
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2019/8/27 校内模拟赛 考试报告相关的知识,希望对你有一定的参考价值。
A.挑战(challenge.cpp)
首先令\(x_i=max(a_i-k,0)\),即破坏第\(i\)个防御区域的代价.
设\(dp_i\)表示从\(1...i\)需要的最小代价,有状态转移方程:\(dp_i=min(dp_j)+x_i\),其中\(i-L\le j\le i-1\).
初始化边界\(dp_0=0,dp_1...n+1=inf\).动态规划求出\(dp_n+1\)即可.
时间复杂度\(O(n^2)\),可以用ST表/线段树优化到\(O(nlogn)\).
B.乌龟(turtle.cpp)
如果\(n>cnt(T)\),答案为\(Len\)或\(Len-1\),其中\(cnt(T)\)表示\(T\)的个数,\(Len\)表示字符串的长度.
否则,可以动态规划求出要修改哪\(n\)次操作.
但是我不会??
C.代表(delegate.cpp)
二分图匹配.
从源点向每个人容量为\(1\)的边,从每个社团向汇点连容量为\(1\)的边,从每个人向他所参加的社团连边.整张网络的最大流就是答案.
也可以用匈牙利算法进行二分图匹配.
正确性显然.
D.树(tree.cpp)
我对题意的理解似乎有问题.我的做法是先\(O(n)\)建出树,再用\(O(logn)\)的倍增LCA操作回答每个询问,时间复杂度\(O(nlogn)\).需要注意对题目中系数的取模处理.
但是总感觉有什么不对.
以上是关于2019/8/27 校内模拟赛 考试报告的主要内容,如果未能解决你的问题,请参考以下文章