zoukankan      html  css  js  c++  java
  • 2019.11.09【NOIP提高组】模拟 A 组 总结

    今天校庆!!!(祝纪中85周年快乐!)
    当然,我们也表演了,节目为《我和我的祖国》。
    不错,但到了(9:00)多才到机房。感觉(GG)

    考场:(80 + 100 + 0 = 180)

    T1:
    期望问题,打表找规律
    我们对于这个序列的第(i)位,可以发现:
    需要生成第一次为1,生成第二次为(i/n),生成第三次为(i*i/n/n),。。。
    所以我们可以得到答案为(sigma(i,1,n)n/i)。(具体不详)
    或者我们也可以推出递推式,(F(i)=i/n*(F(i)+1)+(n-i)/n*(F(i-1)+1)),然后得出。
    然后可以分段打表。
    当然,还有个欧拉公式:
    (1/1+1/2+1/3+...+1/n=ln(n)+C(约等于0.577215664901532860606512090082402431042159335)+1/(2*n).)
    对于此题,可以直接套用。

    T2:
    很容易想到先将询问排序,然后在依次加入可加入的边,用并查集维护每个块,答案也很容易求出。实打实的签到题。

    T3:
    看完题,自然地想到了将字符串排序。
    然后对于前缀,我们可以用二分来求出所在的区间。
    对于后缀,我们可以将字符串反着建个(trie),然后对于(trie)上的每个节点都建一个线段树,表示当前子树所包含的字符串(有为1,没有为0)
    对于询问,我们就可以找到后缀在(trie)上的位置,求出线段树中前缀求出来的区间的权值和,即为答案。

    【友情提示】
    字符串全部由小写字母a到j组成,行末保证没有多余字符,没有多余的空行,没有空串

    注意范围(a)~(j)!!!,我就空超了,然后调了将近一个小时。。。

    转载需注明出处。
  • 相关阅读:
    面向对象反射、元类
    面向对象高级
    面向对象之封装
    抽象、继承、组合
    面向对象基础
    常用模块及其使用(二)
    常用模块及其使用
    模块及模块的使用
    drf框架之视图类、视图家族和路由组件
    drf框架群查接口的筛选组件之搜索过滤组件、排序过滤组件、分页器组件、django_filter插件
  • 原文地址:https://www.cnblogs.com/jz929/p/11826544.html
Copyright © 2011-2022 走看看