小蓝和小青在做数字破解游戏

小蓝和小青在做数字破解游戏,设某图案由m*n的0和1点阵组成,依照以下规则破解连续一组数值,从点阵图第一行第一个符号开始计算,从左到右,由上至下。第一个数表示连续有几个0,第二个数表示接下来连续有几个1,第三个数再接下来连续有几个0,第四个数
接着连续几个1,以此类推……
例如,数字点阵图案对应的破解原码是: 10 3 2 1 3 4 5 7 2 4 1 1 3 4
在这里插入图片描述
(破解原码保证交替的各位数之和)第一个数是n,表示点阵图每行的数字个数。其余各位表示交替表示0和1的个数。输入格式:一行,压缩原码。

输出格式:数字点阵图(每行数字之间不留空格)(3<=nm<=200)
输入样例: 10 3 2 1 3 4 5 7 2 4 1 1 3 4
输出样例:
在这里插入图片描述

使用python实现

# test 10 3 2 1 3 4 5 7 2 4 1 1 3 4
# 输入最后多了个空格都会报错
list1 = input().split(' ')
list1 = [int(i) for i in list1]


n = list1[0]

list2 = list1[1:]

# 接收字符串
list_need = []

# 记录0与1之间的变化
t = 0
for i in list2:
#     print(i)  
    for j in range(i):
        if t % 2 == 0:
            list_need.append(0)
        else:
            list_need.append(1)
        
    t += 1


for i in range(0, int(len(list_need))):
    
    print(list_need[i], end='')
    
    
    # 使用余数的计算实现每n个数字进行一次换行
    if (i + 1) % n == 0:
        print('')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值