leetcode:心算挑战
创始人
2024-11-13 18:37:11
0

题目:

        心算项目的挑战比赛中,要求选手从N张卡牌中选出cnt张卡牌,若这cnt张卡牌数字总和为偶数,则选手成绩「有效」且得分为cnt张卡牌数字总和。给定数组cardscnt,其中cards[i]表示第i张卡牌上的数字。 请帮参赛选手计算最大的有效得分。若不存在获取有效得分的卡牌方案,则返回0

示例 :

输入

输出

解释
cards = [1,2,8,9]
cnt = 3
18选择数字为 1、8、9 的这三张卡牌,此时可获得最大的有效得分 1+8+9=18。
cards = [3,3,1]
cnt = 1
0不存在获取有效得分的卡牌方案。

提示:

  • 1<=cnt<=cards.length<=10^5
  • 1<=cards[i]<=1000

题解:

思路:

        将 cards 从大到小排序后,先贪心的将后 cnt 个数字加起来,若此时 sum 为偶数,直接返回即可。若此时答案为奇数,有两种方案:

        在数组前面找到一个最大的奇数与后 cnt 个数中最小的偶数进行替换;

        在数组前面找到一个最大的偶数与后 cnt 个数中最小的奇数进行替换。

代码:Python

def leet_code(cards, cnt):     cards.sort(reverse=True)  # 排序,从大到小、     left, right = cards[0:cnt], cards[cnt:]     num = sum(left)      if num % 2 == 0:         return num     if num % 2 != 0 and len(cards) == cnt:         return 0      odd, even = 0, 0     for i in right:  # 剩余数据的最大奇数和最大偶数         if odd == 0 and i % 2 != 0:             odd = i         if even == 0 and i % 2 == 0:             even = i      ans = list()     for i in left:  # 所有和的可能         ans.append(num - i + odd)         ans.append(num - i + even)     ans.sort(reverse=True)     for i in ans:  # 返回最大偶数         if i % 2 == 0:             return i   if __name__ == '__main__':     cards = [1, 2, 8, 9]     cnt = 3     res = leet_code(cards, cnt)     print(res) 

总结:

题目内容来源于leetcode链接:心算挑战

相关内容

热门资讯

程序员教你!方片十三张外挂,h... 程序员教你!方片十三张外挂,hhpoker辅助器,大纲教程(了解有挂)1、超多福利:超高返利,海量正...
盘点一款!途游大作战辅助,科乐... 盘点一款!途游大作战辅助,科乐天天踢辅助视频,教材教程(讲解有挂)1、每一步都需要思考,不同水平的挑...
科技通报!微信小游戏修改器,乾... 科技通报!微信小游戏修改器,乾坤互娱辅助,手册教程(新版有挂)1、微信小游戏修改器模拟器是什么优化,...
终于清楚!金虎爷有挂吗,约战竞... 终于清楚!金虎爷有挂吗,约战竞技场辅助脚本,模板教程(真的有挂)一、金虎爷有挂吗可以开透视的定义与意...
实测必看!菠萝神辅助器app,... 实测必看!菠萝神辅助器app,潮汕汇辅助器,举措教程(有挂神器)1、菠萝神辅助器app脚本辅助下载、...
热点推荐!微信小程序微乐家乡辅... 热点推荐!微信小程序微乐家乡辅助器,兴动休闲辅助,积累教程(有挂秘笈)微信小程序微乐家乡辅助器透视方...
最新研发!小闲巴渝辅助,海盗来... 最新研发!小闲巴渝辅助,海盗来了辅助脚本,攻略教程(有挂存在)1、这是跨平台的小闲巴渝辅助轻量版有透...
推荐一款!边锋游戏小程序辅助器... 推荐一款!边锋游戏小程序辅助器免费,九酷众游辅助,攻略教程(有挂解惑)1、边锋游戏小程序辅助器免费有...
科技通报!来物局潮汕辅助,卡农... 科技通报!来物局潮汕辅助,卡农血拼辅助,资料教程(确实有挂)1)来物局潮汕辅助辅助插件:进一步探索来...
一分钟了解!免费的衢州都莱辅助... 一分钟了解!免费的衢州都莱辅助器下载,随意玩有没有辅助,经验教程(有挂技巧)进入游戏-大厅左侧-新手...