鱼C论坛

 找回密码
 立即注册
查看: 833|回复: 1

python

[复制链接]
发表于 2019-4-3 11:53:40 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
请问,如何才能够实现{-1,0,1} --- > {q0,q0+q1,q0+q1+q2} ---> {-1,-1,0}  ,可以用accumulate吗? 请码一下,谢谢
def code_derived_set(encoded_set):

    running_sums = []
    running_sum = 0
    encoded_set = bin(encoded_set)[2 :][: : -1]
    for i in range(len(encoded_set) // 2 * 2 - 1, -1, -2):
        if encoded_set[i] == '1':
            running_sum += -(i + 1) // 2
            running_sums.append(running_sum)
    for i in range(0, len(encoded_set), 2):
        if encoded_set[i] == '1':
            running_sum += i // 2
            running_sums.append(running_sum)


   encoded_running_sum = 0
    for value in running_sums:
        if value < 0:
            encoded_running_sum |= 1 << (-value * 2 - 1)
        else:
            encoded_running_sum |= 1 << (value * 2)
    return encoded_running_sum
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-4-3 15:44:58 | 显示全部楼层
  1. >>> a=-1
  2. >>> b=0
  3. >>> c=1
  4. >>> n=[a,a+b,a+b+c]
  5. >>> n
  6. [-1, -1, 0]
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-1-15 00:57

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表