zoukankan      html  css  js  c++  java
  • 福建省队集训 20180713

    福建省队集训 20180713

    Yist

    有一个 n 个点 m 条边的无向图,结点从 1 到 n 标号,点 u 的初始权值为 (w_u)。你可 以对任意结点 u 进行操作,将你的得分(初始为 0)加上 (∑ _{(u,v)∈E} w_v),并将 (w_u) 除以 2。

    给定一个长度为 k 的结点序列 (s1, s2, . . . , sk(1 ≤ si ≤ n)),在一轮操作中,你需要依次对 (s_1, s_2, . . . , s_k) 进行操作。你想知道,在进行了无限轮操作后,你得分的极限是多少。

    答案的式子不难推,等比数列求和即可。

    怎么统计答案呢?注意到答案的式子只和v有关而且随着k变化而变化,我们考虑模拟+根号分治(是叫这个吗?),讨论一个点的相邻的点的度数,(d_vleq sqrt n)则把 (v) 的答案加到 (ans_u)上,否则在询问时单独访问(v)统计。修改的时候暴力修改小点周围的ans,否则不改。这样总复杂度是(nsqrt n)的,感觉这个小点记大点求的套路挺常见的。

    注意int和ll,wa了好几发,考试的时候一定要对拍T_T

    Ernd

    给定一个长度为 n 且仅包含小写英文字母的字符串 S。你有一个字符串 T,初始 为空串。

    你可以进行 n 次操作,每次操作你可以在 T 的前端或末尾加入一个任意字母。记 第 i 次操作后 T 在 S 中的出现次数为 fi,你需要最大化 ans = ∑ i fi。

    50~70可能就区间dp+SAM找一找出现次数,然后随机的话超过一定长度就不用找了,出现次数看成1即可。出错的概率是(frac n {26^l})(应该不准确,不过差不多),l设成20多应该就行吧

    感觉对SAM还是掌握不够熟练...本来是道简单题

    在后面添加字符相当于走转移边,在前面添加相当于走到某个儿子或者保持不动,不过只能保持(len-fa.len)次,直接把dag和parent树合并,dp即可(简单吧

    Sanrd

    直接主席树

  • 相关阅读:
    洛谷p1017 进制转换(2000noip提高组)
    Personal Training of RDC
    XVIII Open Cup named after E.V. Pankratiev. Grand Prix of Eurasia
    XVIII Open Cup named after E.V. Pankratiev. Grand Prix of Peterhof.
    Asia Hong Kong Regional Contest 2019
    XVIII Open Cup named after E.V. Pankratiev. Grand Prix of Siberia
    XVIII Open Cup named after E.V. Pankratiev. Ukrainian Grand Prix.
    XVIII Open Cup named after E.V. Pankratiev. GP of SPb
    卜题仓库
    2014 ACM-ICPC Vietnam National First Round
  • 原文地址:https://www.cnblogs.com/lcyfrog/p/13080931.html
Copyright © 2011-2022 走看看