纯纯的思维
文章目录
简单C - Magical Rearrangement
中等较难
简单
C - Magical Rearrangement
传送门 题意:给你 0 ~ 9 每个数字的数量,让你构造一个数字,数字必须符合以下规则: 1、所有数字必须被用上 2、不能有前导零 3、相邻数字不能相同 问构造的最小数字,无法构造输出 -1 做法:设每个数字的数量输入到 a 数组里,数量总和为 n,k 为数量最多的数字,mx 为他的数量。 首先思考 -1 的情况,n == 0 或者 a[0] > n / 2 或者 mx > (n + 1) / 2 除了 -1 外还有一种特殊情况,n == a[0] == 1,输出 0 其他情况一定可以构造出来,从贪心的角度看一定是输出小的,再输出大的,但有些情况只能先输出大的,比如 a[0] = 4, a[1] = 4, a[2] = 3,答案是 10101020212,第
纯纯的思维最先出现在Python成神之路。
共有 0 条评论