纪中第二十一天(最后一天)

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

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

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

  

  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以下)当然,可以不暴力,有更优的维护方法,可以自行思考。

 

这套题真是:

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

posted @ 2019-08-23 15:09  WestJackson  阅读(147)  评论(0编辑  收藏  举报