【水水】关于11.7模拟赛

T1:[CSP-J 2021] 插入排序

洛谷84 cena60(STL的锅)

启发一:线段树压缩内存(尽量不要用STL存数,严重拖慢速度!)

发现一个map的优化

启发二:(1 3 3 2 个数排名为 1 3 4 2(即第一个3与第二个3不一样))可以将范围(1,maxn_shu)拖到(1,n*maxn_shu)

 

T2:[BJWC2008]秦腾与教学评估

cena 洛谷 20分

二分神题

抓住重点→至多只有一个奇数 所以若(l,mid)个数和为奇数,则答案在(l,mid)反之则在(mid+1,r),若两个区间都为偶数,则无解

(一开始想到了但因为坚信答案在端点所以WA了o(╥﹏╥)o)

 

T3:[JSOI2015]最大公约数 题解

cena 洛谷 40分,去掉低级错误100分

dp[m]=dp[m-i]+ans(i)<-这个形式挺常见的

还有就是俺蠢飞了

所以一定要明晰dp每一维的作用

 

T4:[JSOI2015]最大公约数

没打,嘿嘿

法一:关于性质:长度n的序列的所有子序列的公约数,最多有logn个

      所以记录下所有涉及到的gcd,然后存下每个gcd中最大区间,然后处理答案

法二:分治(很好的分治题)

题解中的一段话
在我们现在考虑的区间 [L,R]中,设最大价值区间为[l,r],设 mid=(L+R)/2 那么它只有三种可能:
[l,r] 在区间 [L,mid)中。
[l,r]在区间 (mid,R]中。
l 在 [L,mid]中,r在 [mid,R]中。

   题解传送门

   

 

posted @ 2021-11-07 21:49  latent_Lin  阅读(26)  评论(0编辑  收藏  举报