当前位置: 首页 > 编程笔记 >

二进制前缀在Python中可被5整除

仲孙才捷
2023-03-14
本文向大家介绍二进制前缀在Python中可被5整除,包括了二进制前缀在Python中可被5整除的使用技巧和注意事项,需要的朋友参考一下

假设我们有一个0和1的数组A,考虑N [i]是从索引A [0]到A [i]的第i个子数组,被解释为二进制数。我们必须找到一个布尔答案列表,其中且仅当N [i]被5整除时,答案[i]为真。

因此,如果输入类似于[0,1,1,1,1,1,1],则输出将为[true,false,false,false,true,false]

为了解决这个问题,我们将遵循以下步骤-

  • 长度:= A的大小

  • ans:=制作一个大小为长度的数组,并用false填充

  • 数字:=通过将A中的每个元素串联而得到的二进制值

  • 对于长度范围为0的i,执行

    • ans [length-i-1]:=真

    • 如果数字mod 5与0相同,则

    • 数字:=数字/ 2

    • 返回ans

    让我们看下面的实现以更好地理解-

    示例

    class Solution:
       def prefixesDivBy5(self, A):
          length=len(A)
          ans=[False]*length
          number=int("".join(map(str,A)),2)
          for i in range(length):
             if number%5==0:
                ans[length-i-1]=True
                number=number>>1
          return ans
    ob = Solution()print(ob.prefixesDivBy5([0,1,1,1,1,1]))

    输入值

    [0,1,1,1,1,1]

    输出结果

    [True, False, False, False, True, False]
     类似资料:
    • 问题内容: 为了将整数转换为二进制,我使用了以下代码: 什么时候擦除“ 0b”,我用这个: 我能做些什么,如果我想展现的,而不是? 问题答案: 仅说明格式化字符串的部分: 将变量放入字符串 将变量放在参数位置0 为该变量添加格式设置选项(否则它将代表小数) 将数字格式化为左侧零填充的八位数字 将数字转换为其二进制表示形式 如果您使用的是Python 3.6或更高版本,则还可以使用f字符串:

    • 问题内容: 我正在尝试在Python中读取BMP文件。我知道前两个字节表示BMP公司。接下来的4个字节是文件大小。当我执行时: 我得到: ValueError:以10为底的int()的无效文字:’F#\ x13’ 我想做的是将这四个字节读取为整数,但是Python似乎将它们读取为字符并返回一个字符串,该字符串无法转换为整数。如何正确执行此操作? 问题答案: 该方法将字节序列作为字符串返回。要将字符

    • 问题内容: 我知道用和 将小数转换为二进制(在这里我取32位结果的低16位)。 我想做的是另一种方法,并采用16位二进制补码二进制字符串并将其转换为十进制。 即 而不是 我该怎么做? 问题答案: 您需要将结果读取到中。 此打印。

    • 问题内容: 如何在Python中加,减和比较二进制数而不转换为小数? 问题答案: 您可以使用bin()和int()在二进制字符串表示形式之间进行转换

    • 问题内容: Python中的整数以二进制补码存储,对吗? 虽然: 和: 真是la脚。如何获取python以实数二进制位给我数字,并且没有0b开头?所以: 问题答案: 不确定如何使用标准库获取所需的内容。那里有一些脚本和软件包可以为您完成转换。 我只是想指出“为什么”以及为什么它不la脚。 bin()不返回二进制位。它将数字转换为二进制字符串。根据python语言定义,前导‘0b’告诉解释器您正在处

    • 问题内容: 我有一些二进制数据,它们在Python中是字节字符串数组的形式。 是否有一种可移植的方式来序列化其他语言可以读取的数据? JSON丢失了,因为我刚刚发现它没有存储二进制数据的真正方法。其字符串应为Unicode。 我不想使用,因为我不想存在安全风险,因此将其限制在其他Python程序中使用。 有什么建议吗?我真的很想使用内置库(或至少是标准Anaconda发行版中的一个库)。 问题答案