Sorry, your browser cannot access this site
This page requires browser support (enable) JavaScript
Learn more >

sol by wmrqwq

算法 11m500m \le 500

考虑直接结合 m500m \le 500 这个限制去做背包,时间复杂度 O(nm2)O(nm^2),期望得分 2020 分。

算法 22m106m \le 10^6

考虑优化算法 11,可以使用区间加,区间求和的数据结构去优化背包,时间复杂度 O(nmlogm)O(nm \log m),期望得分 3535 分。

或者你根据算法 44 直接暴力求交,也是可以获得这 3535 分的。

算法 33li=ril_i = r_i

发现此时周期就是 lcm(l1,l2,l3,,ln)\texttt{lcm}(l_1,l_2,l_3, \dots,l_n) 的值,设 num=lcm(l1,l2,l3,,ln)num = \texttt{lcm}(l_1,l_2,l_3, \dots,l_n),答案即为 num109\lfloor \frac{num}{10^9} \rfloor,期望得分 1010 分,集合算法 22 即可获得 4545 分。

算法 44li<ril_i < r_i

发现对于每一对数 li,ril_i,r_i,可以得到的数字为 [li,ri],[2li,2ri],[3li,3ri],,[kli,kri][l_i,r_i],[2l_i,2r_i],[3l_i,3r_i], \dots, [kl_i,kr_i],直接求交即可,期望得分 7070 分。

算法 55

结合算法 3,43,4 时间复杂度为 O(nV)O(nV),其中 VVmax(li,ri)\max(l_i,r_i)

期望得分 100100 分。

参考代码

评论