DOJ logoDOJ
题目
最近添加的题目收藏的题目Workbooks
分类DLC比赛小组团队讨论区
排名
解题数量排行榜连续解题排名DOJ Power 排行榜
评测状态
征题登录注册
DOJ logoDOJ

支持 OI 子任务计分、Elo 等级分和 Discord 账号绑定的社区在线评测系统。

题目
题目列表分类
社区
比赛排名讨论区公告举办外部比赛指南
账号
登录注册评测状态
政策
服务条款DLC 使用规则隐私政策API 文档语言运行环境比赛排名奖励评级与表现
© 2026 DOJ
保留所有权利
题解

Mochi

返回题目

题解

가장 많이 등장하는 크기의 등장 횟수를 FFF라고 하자. 한 묶음에는 서로 다른 크기의 떡 두 개가 필요하다.

어떤 크기가 F>N/2F>N/2F>N/2번 등장한다면 그 크기의 떡은 다른 크기의 떡과만 묶을 수 있으므로 최대 N−FN-FN−F개를 만들 수 있다. 반대로 F≤N/2F\leq N/2F≤N/2라면 가장 많은 크기도 나머지 떡들과 충분히 짝지을 수 있어 ⌊N/2⌋\lfloor N/2\rfloor⌊N/2⌋개를 만들 수 있다.

따라서 정답은 min⁡(⌊N/2⌋,N−F)\min(\lfloor N/2\rfloor,N-F)min(⌊N/2⌋,N−F)이다. 빈도만 세면 되므로 해시 맵을 사용하면 기대 시간 복잡도는 O(N)O(N)O(N)이다. Solution written by GPT5.6