9.14pdd笔试(4/4)
1. 取1和2的倍数下标的字符拼接即可
2. 贪心,对于n天用小根堆维护{a[i],x},对于货物的动态取当前最小且没用完的天数即可
3. 不难发现题目可以转换为表达式(a[i] - a[target]) = (i - target),即a[i] - i = a[target] - target,那么用一个map维护a[i] - i计数即可
4. 因为可以随意交换位置,那么对于x和y,设z为lsm(x,y),答案就是最大的x - z个数 - 最小的y - z个数即可,前缀和维护即可
2. 贪心,对于n天用小根堆维护{a[i],x},对于货物的动态取当前最小且没用完的天数即可
3. 不难发现题目可以转换为表达式(a[i] - a[target]) = (i - target),即a[i] - i = a[target] - target,那么用一个map维护a[i] - i计数即可
4. 因为可以随意交换位置,那么对于x和y,设z为lsm(x,y),答案就是最大的x - z个数 - 最小的y - z个数即可,前缀和维护即可
全部评论
第二题我用的是优先队列,试了几个样例都是对的但是提交就是0,难绷😤
求第四题代码,我无法理解前缀和在这里的是怎么用的,我都是直接x选最大的,y选最小的,公共部分不选,这样得出的结果只通过了20%
能不能解释下第四题什么意思,根据给的定义,是数组可以任意顺序,然后根据那个求和公式算,但样例为什么不是a1+a2+a3+a4-(a1+a2+a3)呢,那个公式没整明白,题都看不懂我也是服了
第二题超时,过40,懒得优化就交了,其他倒是很简单
相关推荐
昨天 19:11
深圳大学 后端工程师 点赞 评论 收藏
分享
09-14 11:53
中南大学 Java 点赞 评论 收藏
分享
昨天 11:50
华中科技大学 Java 点赞 评论 收藏
分享