zoukankan      html  css  js  c++  java
  • Codeforces Global Round 7

    Codeforces Global Round 7

    E

    答案显然单调不增,那么初始答案为 (res=n),不断判定并减小答案直到可行。判断方法:把有删除操作的地方记上 (-1),把 (p_ige n) 的地方记上 (+1),若最大的后缀和 (>0),则 (res) 可行。这些操作都可以用线段树完成

    F1

    (s) 折半,每一边有 (2^{frac{n}{2}}) 种情况,每种用朴素 (dp) (2^nn)暴力处理,然后合并,总复杂度 (O(2^{1.5n}n))

    F2

    大致说一下

    进行容斥,设 (res_i)(01)(i) 的答案,先计算 (S_i=sumlimits_{j|i=j}res_j),然后再推出 (res)(S_i) 的意思就是 (i)(1) 的地方依旧必须是认识的,但为 (0) 的地方无所谓,这样转化使得限制条件变少了。然后发现,如果 (A)(B) 的划分情况相同(长度为 (1,2,3dots) 的连续 (1) 段数量均相同),则 (S_A=S_B)。那么只要计算 (P(n)) 种情况即可。设划分成了 (m) 段,长度为 (l_1,l_2,l_3dots),也就是要在原图中找到 (m) 条不相交的长度为 (l_1+1,l_2+1dots) 的链(长度为 (L) 的连接了 (L+1) 个人)。“不相交”可以转化为总共有 (n) 个人。先求出 (f_{i,j}) 表示走到 (i),走过的集合为 (j) 的方案数,由此可以得出 (g_{i,j}) 表示走了 (i) 步,走过的集合为 (j) 的方案数,然后对 (g_{i,*}) 来一下 (fwt),计算 (t_j=prod g_{l_i+1,j}),把 (t) 变换回来,(t_{2^n-1}) 就是答案。

    但是常数大了就过不了,很多题解的代码也过不了,应该是 (CF) 的评测机变慢了。

    G

  • 相关阅读:
    ABAP中COLLECT的用法
    中文字符串提交乱码的解决方法
    我的Ubuntu系统
    SAP消息呈现
    ASP.NET博客站点全静态化的困扰
    JS利用函数修改全局变量
    让电脑速度增快几倍的法宝
    我的Ubuntu门派
    给老乡买本本的经历
    多事之秋
  • 原文地址:https://www.cnblogs.com/whx666/p/14973306.html
Copyright © 2011-2022 走看看