2020.7.9比赛总结

题目链接
感受:思维很迟钝,没有什么比这句话更能概括我现在的状态了。对某些问题很难发现问题的本质,想的较慢,这样是绝对不行。虽然老师说现在是一个积累的过程,但自我要求不能因为这句话而懈怠了,不能因为现在是所谓的积累的过程而觉得很悠闲。相反,要尽快提高自己的思维能力。现在能做出来的题基本都是不涉及算法的题,都是思维活跃一点,思路准确一点就能完全ok的题。仅做这些肯定是不够的,必须要提高做题速度去努力在比赛中做到关于算法的题。

A题

题目大意:给你三串数,a是前缀,c是后缀,b是中间,用最少的移动次数使其满足这种条件。
思路:嗯嗯。。看了题解觉得很简单,但。。自己却想不到。就是求一个最长上升子序列,然后用n减去其中最长的子序列就是答案。确实是这个道理,看了题解竟觉得思路如此清晰。。

B题

题目大意:让你求一个数组中最短的占领数组。
思路:其实最长的占领数组中那个最多的元素最多就是两个,假设是三个的话,那么去掉一个明显更短。。所以就很简单了,存储一下每个元素上一次出现的位置,类似于链表的形式,每次维护一下最小值就行了

C题

题目大意:给你四个数n,x,a,b。要使|a-b|的值尽量大,可以对a和b总共移动x次,ab的位置不得小于1和大于n。
思路:尽量往两边放。。

D题

题目大意:有n个怪,有m个人,每个人有一定的耐久度和力量值,力量值大于等于怪的能力值时能打过,打不过时就退出来。耐久度耗完也退出来。每天只能出动一个人,每个人可以出动多次。问最少需要几天可以打完n个怪。
思路:嗯很明显的贪心,局部最优可以形成全局最优,因为必须要按这个顺序打怪和可以多次使用一个人。所以每天就找一个走的最远的人上就行。但是找的这个过程如果不优化是超时的。一开始打了个st表查询怪的能力值,发现判断位置时会超时,又打了个二分判断最右边的端点。但wa掉了。。最后乖乖搜题解发现了很神奇的信息存储方式。用mx[i]表示耐久度为i的最大力量值,然后就挨个判断就行了。

E题

题目大意:给你一个对于字符串相似度的定义,根据这个定义问能否把a数组内的元素异或上一个数x使其形成的新数组b内元素全部相似
待补。。

F题

是放错题了还是咋了,和昨天那道题一摸一样。

你可能感兴趣的:(总结)