您好,欢迎来到爱玩科技网。
搜索
您的当前位置:首页codechef MAY18 div2 部分题解

codechef MAY18 div2 部分题解

来源:爱玩科技网

T1

https://www.codechef.com/MAY18B/problems/RD19

刚开始zz了,其实很简单。

删除一个数不会使变小,于是就只有0/1两种情况

 

T2

https://www.codechef.com/MAY18B/problems/XORAGN

我们可以把B序列看做一个矩阵

那么$A(i,j)$和$A(j,i)$会抵消掉

因此答案就是$\sum_1^n A(i,i) + A(i,i)$

 

T3

https://www.codechef.com/MAY18B/problems/MTYFRI

答案的序列是固定的,因此后手会把自己最小的换做对手最大的,

贪心求解,两个堆维护最小最大值

 

T4

https://www.codechef.com/MAY18B/problems/DBFB

按照套路,考虑A,B对答案的贡献,A只可能作为第一项,B只可能作为第二项。

统计出斐波那契数列中A,B的出现次数

A,B会被枚举M次,因此答案最后乘M

 

T5

很有思维量的一道题

首先,对于每个数,它能够被枚举到的顺序是一定的

根据题目不难得出,它所在序列的各个值应该是单调递增的。

那么我们可以把序列求出来,对于这个点,从它左边比它大的个数和它右边比它小的元素个数里面取max

-1的情况需要特判

 

T6

很有思维量的一道题,前前后后做了3天才A掉

刚开始zbq想了一个三维dp,应该可以做已AC,但是太麻烦了好像也不是很麻烦

考虑每个数,当且仅当它左边右边都比它大时才能转移

这样我们用$f[i]$表示一定选$i$时的最优答案,转移的时候枚举前面的点

这样看似是$O(n^2)$的,但是很显然,答案序列的函数图像中大多数都是单调递增的

因此我们只要往前枚举一部分就好,亲测1000可过

 

目前rank

 

 

顺便Orz zbq 

 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- aiwanbo.com 版权所有 赣ICP备2024042808号-3

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务