1. Job Roadmap
  2. Home
  3. Problem Set
  4. codenotelist
  5. Forum
  6. course
  7. Shore Share Sessions
  8. Record
  1. Login
  2. Sign Up
  3. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
    ZhContent TextSol video solution AI分析

思路分析

我们的目标是最大化 ∑bi\sum b_i∑bi​。由于 bib_ibi​ 的定义依赖于前缀 MEXMEXMEX,并且 bib_ibi​ 序列是非递减的(b1≤b2≤...≤bnb_1 \le b_2 \le ... \le b_nb1​≤b2​≤...≤bn​),我们希望让 bib_ibi​ 的值尽可能早地、尽可能大地增长。

bi=MEX({a1,...,ai})b_i = MEX(\{a_1, ..., a_i\})bi​=MEX({a1​,...,ai​})。为了让 bib_ibi​ 的值变大,我们需要让前缀 {a1,...,ai}\{a_1, ..., a_i\}{a1​,...,ai​} 尽可能地包含从 000 开始的连续整数。

  • 为了最大化 b1=MEX({a1})b_1 = MEX(\{a_1\})b1​=MEX({a1​}),我们应该选择 a1=0a_1=0a1​=0(如果数组 aaa 中有 000 的话)。这样 b1=1b_1=1b1​=1。如果选择其他数, b1=0b_1=0b1​=0。
  • 为了最大化 b2=MEX({a1,a2})b_2 = MEX(\{a_1, a_2\})b2​=MEX({a1​,a2​}),在 a1=0a_1=0a1​=0 的基础上,我们应该选择 a2=1a_2=1a2​=1(如果数组 aaa 中有 111 的话)。这样 {a1,a2}={0,1}\{a_1, a_2\} = \{0, 1\}{a1​,a2​}={0,1},使得 b2=2b_2=2b2​=2。
  • 以此类推,为了让 bib_ibi​ 达到最大可能值 iii,我们需要让前缀 {a1,...,ai}\{a_1, ..., a_i\}{a1​,...,ai​} 恰好是 {0,1,...,i−1}\{0, 1, ..., i-1\}{0,1,...,i−1}。

P3583.第2题-小美的mex之和

    1000ms Tried: 451 Accepted: 80 Difficulty: 4 所属公司 : 美团
    算法与标签>贪心算法

题目内容

小美有一个长度为 nnn 的数组 aaa 。你可以将 aaa 任意重排。定义一个长度为 nnn 的数组 bbb,其中 bi=MEX(a1,a2,...,aib_i= MEX(a_1,a_2,...,a_ibi​=MEX(a1​,a2​,...,ai​)。你需要最大化数组 bbb 中的元素之和。

你需要输出最大的元素和,以及一个可能的 aaa 的重排方案。

【名词解释】

MEXMEXMEX:整数数组的 MEXMEXMEX 定义为没有出现在数组中的最小非负整数。例如 MEXMEXMEX{1,2,31,2,31,2,3}=0、MEX=0、MEX=0、MEX{0,2,50,2,50,2,5}=1=1=1 。

输入描述

第一行输入一个整数 n(1≦n≦2⋅105)n(1≦n≦2·10^5)n(1≦n≦2⋅105) ,表示数组 aaa 的长度

第二行输入 nnn 个整数 a1,a2,...,an(0≦ai≦109)a_1,a_2,...,a_n(0≦a_i≦10^9)a1​,a2​,...,an​(0≦ai​≦109) ,表示数组 aaa 的元素。

输出描述

第一行输出一个整数,表示 bbb 的元素和。

第二行输出 nnn 个整数,表示重排后的 aaa 。

如果存在多个解决方案,您可以输出任意一个,系统会自动判定是否正确。注意,自测运行功能可能因此返回错误结果,请自行检查等案正确性。

样例1

输入

3
1 0 1

输出

5
0 1 1

说明

将 aaa 重排为 {0,1,10,1,10,1,1} 后,数组 bbb 为 {1,2,21,2,21,2,2} ,元素和为 555 。

可以证明不存在一个重排使得数组 bbb 的元素和大于 555 。

样例2

输入

6
0 1 2 3 4 5

输出

21
0 1 2 3 4 5

开通会员即可查看完整视频题解: 1.题目讲解 2.思路分析 3.逐行代码手写

登录后即可使用 AI 分析。

模式
倒计时时长
:

最长 10 小时 59 分;应用后按此时长重新开始。

提示:点击提交记录在左侧题面区域查看详情
题库
AI分析设置
留空使用官方API Key,每天有次数限制(自定义API Key仅限会员和管理员使用,不限次数)
会员和管理员可切换模型;切到 Kimi/智谱/通义/豆包时需填写对应供应商 API Key
升级会员,可将运行与提交冷却时间缩短至 1 秒起

Status

  • Judging Queue
  • Service Status

Development

  • Open Source

Support

  • Help
  • Contact Us

About

  • About
  • Privacy
  • Terms of Service
  • Copyright Complaint
  1. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
  2. Legacy mode
  3. Theme
    1. Light
    2. Dark
  1. 京ICP备2025123107号-1
  2. Worker 2, 48ms
  3. Powered by Hydro v5.0.0-beta.18 Community
CLOSE


ScanQRCodePrompt

请使用微信扫描下方二维码完成注册

Forgot password or username?