1753. 移除石子的最大得分

1753. 移除石子的最大得分

题解:

  1. 先将a,b,c 预处理为 a <= b <= c
  2. 当a + b <= c 时, 【ac】 和 【bc】 轮流取,直到a 和 b 为0 所以答案为 a + b
  3. 当a + b > c 时, 设【ac】取k1次, 【bc】取k2次,先将c取完,然后 再【ab】取 直到a为0, 所以答案为 (k1 + k2) + ((a-k1) + (b-k2)) / 2, 因为k1 + k2 = c, 所以 (a + b + c) / 2
class Solution {
    public int maximumScore(int a, int b, int c) {
        int res = 0;
        int[] arr = new int[]{a, b, c};
        Arrays.sort(arr);
        if (arr[0] + arr[1] <= arr[2]) return arr[1] + arr[0];
        else return (arr[0] + arr[1] + arr[2]) / 2;
    }
}

按题意暴力模拟,数据范围很小

class Solution {
    public int maximumScore(int a, int b, int c) {
        int res = 0;
        int[] arr = new int[]{a,b,c};
        while(true) {
            res ++;
            Arrays.sort(arr);
            arr[2]--;arr[1]--;
            if ((arr[0]<=0 && arr[1] <= 0) || (arr[0]<=0 && arr[2] <= 0) ||(arr[2]<=0 && arr[1] <= 0)) break;
        }
        return res;
    }
}
posted @   Eiffelzero  阅读(20)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
点击右上角即可分享
微信分享提示