随笔分类 - 基础—构造
摘要:把回文串的相等关系连一下,发现最后要求的是一笔画问题 注意到奇数长度的中间有一个单独没有连线的,所以a数组至多有两个奇数值 如果没有奇数,那么b在最前面放一个1,然后把a[1]~a[m 1]放上去,这样就是错位着一笔画了,然后剩下一个奇数值连成若干2中间一个1的样子; 如果一个奇数,那么把奇数放到最
阅读全文
摘要:首先把点权归到边上,设点权较小的一个点是v,也就是(u,v)的边权是log2(dis(u,v)) a[v]+a[v]+a[u] 然后还有一个性质就是这棵树按点权最小点提起来就是一个堆 暴力是n^2的MST,然后考虑优化,按照点权从小到大加入生成树,那么每个点加进去的时候会连到点权比他小的点上 因为l
阅读全文
摘要:A题意:给定字符串s,求无重复字符子序列个数(子序列相同位置不同算不同) 在最后加一串a~z表示选了这些就是不选这个字符了,然后答案就是每次选每个字符位置的方案数的积 cpp include include using namespace std; const int N=100005,mod=1e
阅读全文
摘要:C: 枚举中间点,计算两边点差值,把个数乘起来即可 cpp include include include using namespace std; const int N=200005; long long n,k,ans; int main() { scanf("%lld%lld",&n,&k)
阅读全文
摘要:神仙构造,做不来做不来 详见:http://vfleaking.blog.163.com/blog/static/174807634201329104716122/ cpp include include include include using namespace std; const int
阅读全文

浙公网安备 33010602011771号