ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

AtCoder做题记录

2022-09-06 22:01:41  阅读:41  来源: 互联网

标签:AtCoder limits 记录 sum leq 做题 forall neq


AtCoder大乱炖

AtCoder乱做

AtCoder 随便草

ARC147

ARC147C

发现这个式子当所有 \(x_i\) 趋近于某一个值时答案比较优,于是可以发现这是一个近似单谷函数,用二分 + 随机化/特判过掉就行。

令 \(\max_{i = 1}^n L_i = M\),\(\min_{i = 1}^n R_i = m\)。

  • \(M \leq m\)

    显然 \(\forall 1 \leq i \leq n, L_i \leq M\) 且 \(R_i \geq m\),于是令 \(\forall 1 \leq i \leq n, x_i = m\),答案为 \(0\)

  • \(M < m\)

    因为 \(L_i \leq R_i\),所以 \(M, m\) 必然位于两个不同的下标。假设 \(M = L_p, m = R_q\),那么有结论:\(\forall 1 \leq i \leq n, x_p \leq x_i \leq x_q\)

    证明:如果存在若干位置,使得 \(x_i < x_p\) 或 \(x_i > x_q\),则因为有 \(x_q \leq m < M \leq x_p\),且 \(\forall 1 \leq i \leq n, L_i \leq M\) 且 \(R_i \geq m\),只需要令 \(x_i < x_q\) 的位置为 \(x_q\),\(x_i > x_p\) 的位置为 \(x_p\) 即可,与题设矛盾。

    于是令 \(C = \sum\limits_{i \neq p, q}^n \sum\limits_{j \neq p, q}^n |x_i - x_j|\),则答案为:

    \(C + |x_p - x_q| + \sum\limits_{i \neq l, r} |x_i - x_p| + \sum\limits_{i \neq l, r} |x_i - x_q|\)

    发现这个式子可以递归定义,简单手玩可以发现最后的答案为:

    \(\sum\limits_{i = 0}^{n - 1} |L_i - R_i| \times (n - 2i - 1)\)

    其中 \(L_i\) 按降序排列,\(R_i\) 按升序排列。

    时间复杂度 \(O(n \log n)\)

ARC147D

大诈骗,差评。

首先发现

标签:AtCoder,limits,记录,sum,leq,做题,forall,neq
来源: https://www.cnblogs.com/lingspace/p/atcoder-problems.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有