当前位置: 首页 > article >正文

LeetCode 3309. 连接二进制表示可形成的最大数值

LeetCode 3309. 连接二进制表示可形成的最大数值

给你一个长度为 3 的整数数组 nums。
现以某种顺序 连接 数组 nums 中所有元素的 二进制表示 ,请你返回可以由这种方法形成的 最大 数值。
注意 任何数字的二进制表示 不含 前导零。
示例 1:
输入: nums = [1,2,3]
输出: 30
解释:
按照顺序 [3, 1, 2] 连接数字的二进制表示,得到结果 “11110”,这是 30 的二进制表示。
示例 2:
输入: nums = [2,8,16]
输出: 1296
解释:
按照顺序 [2, 8, 16] 连接数字的二进制表述,得到结果 “10100010000”,这是 1296 的二进制表示。
提示:
nums.length == 3
1 <= nums[i] <= 127

class Solution:
    def maxGoodNumber(self, nums: List[int]) -> int:
        def calc(a1, a2, a3):
            return (
                a3
                + (a2 << a3.bit_length())
                + (a1 << (a3.bit_length() + a2.bit_length()))
            )

        a, b, c = nums
        res = 0
        for nums in [
            [a, b, c],
            [a, c, b],
            [b, a, c],
            [b, c, a],
            [c, b, a],
            [c, a, b],
        ]:
            res = max(calc(*nums), res)
        return res


http://www.kler.cn/news/342014.html

相关文章:

  • MSYS2+GCC 安装与应用保姆手册
  • Java 函数式编程(1 万字)
  • 【JDK17 | 7】Java 17 深入剖析:基础概述与新特性实战
  • MinIO分片上传超大文件(纯服务端)
  • 链式二叉树及二叉树各种接口的实现(C)
  • FFmpeg 简介及其下载安装步骤
  • 2024互联网下载神器IDM6.42你值得拥有
  • Python编写的数字光刻仿真程序,使用了Hopkins光刻模型和粒子群优化(PSO)算法来优化掩模设计
  • 光伏开发:一充一放和两充两放是什么意思?
  • VirtualBox虚拟机连接宿主机并能够上网(小白向)
  • Linux驱动开发(速记版)--GPIO子系统
  • 如何构建某一行业的知识图谱
  • redis同步解决 缓存击穿+缓存穿透 原理代码实现
  • go代码不生效问题
  • Java开发环境命名规则
  • 使用FastAPI做人工智能后端服务器时,接口内的操作不是异步操作的解决方案
  • 【rCore OS 开源操作系统】Rust 异常处理
  • 5款人声分离免费软件分享,从入门到精通,伴奏提取分分钟拿捏!
  • 基于微信小程序的像素画创作与分享平台设计与实现
  • 【实战】Nginx+Lua脚本+Redis 实现自动封禁访问频率过高IP