zoukankan      html  css  js  c++  java
  • 纪中第二十一天(最后一天)

      今天是我来到纪中的最后一天了,下午我就要离开这个美丽的纪中了!!!

      今天上午比了赛,直接自闭

      但是比完赛听完题后,我的心中十分清爽!!

      

      T1:

      

    考虑每只蚂蚁较复杂,我们试着转换思想

    看成蚂蚁碰头之后不回头,因为每个蚂蚁都是一样的。

    设蚂蚁位置为pi,最短时间=max(min(pi, l-pi)),最长时间=max(max(pi,l-pi))

       T2:

     

    这道题的方法:贪心+高精度

    首先可以通过运算得出:n(n+1)>(n-1)(n+2)

    再将几个数拆分可以看出基本上是连续自然数 ( ⊙ o ⊙ )!

    所以就得出了这个结论 将一个数拆分成2+...+x 若a[x]<=a[x-1] 那么就将最后一个数的值往前分配,一次分配1,直至全部分配完 但是数字有10000,最少是乘到140吧O(∩_∩)O~ 所以肯定会超啊 所以我不得不使用高精度

      T3:

     

      这是一道数学题,可以用DP推导。设f[i][0]表示进行到第i位,且第i位放士兵的总方案数;再设f[i][1]表示表示进行到第i位,且第i位放战车的总方案数。那么根据题意,易得转移式如下:

    f[i][0]=f[i-1][0]+f[i-1][1]

    f[i][1]=f[i-1][0]

     

      设第i位总方案数为g[i],所以整理得:

    g[i]=f[i][0]+f[i][1]

    =f[i-1][0]*2+f[i-1][1]

    =g[i-1]+f[i-2][0]+f[i-2][1]

    =g[i-1]+g[i-2]

     

      所以长度为i的方案数就等于 长度为i-1的方案数 + 长度为i-2的方案数

      于是推导就相当于斐波拉契数列!(真恶心

      可是O(N)也只能过70%的数据点,100%则矩阵乘法,O(log N)AC。

     

     T4:

      

    理论时间复杂度:N*N*logN*1/4(事实上更小)

    30%可以暴力搜索;

    50%可以贪心算法+快速排序;(贪心选物,排序确定顺序)

    100%可以先用贪心法找出该取的物品,然后用堆来维护取出顺序。原理:第X+1次取物肯定实在第X次的基础上,从剩余物品中找出距离更大或质量更大的物品,堆可以以logN的速度插入,到需要计算最终分时再逐个取出,不需要时只是维护便好。(最终得分来源于基础分,即将已选的物品质量从小到大排个序,先取小后取大)(要多暴力就有多暴力,复杂度N*N *logN*1/4以下)当然,可以不暴力,有更优的维护方法,可以自行思考。

    这套题真是:

    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

  • 相关阅读:
    sendmessage参数
    combobox添加选项
    sql数据库时间转换convert
    Javascript知识四(DOM)
    Javascript知识三
    JavaScript知识(二)
    JavaScript知识(一)
    三层架构
    ADO知识的运用二(Day 28)
    SQL知识三(Day 27)
  • 原文地址:https://www.cnblogs.com/WestJackson/p/11400141.html
Copyright © 2011-2022 走看看