自测-3 数组元素循环右移问题 (20 分)

自测-3 数组元素循环右移问题 (20 分)

在这里插入图片描述
本题思路:
1.直接用切片方法,把数组切成两块,先输出后半段,再输出前半段
2.难点在于,空格的要求:结尾不能有空格。
因此选择对首个数字直接输出,后面数字输出空格+数字

r1 = input().split()   #获取第一行
n = int(r1[0])
m = int(r1[1])

l = input().split()   #获取第二行
l1 = l[0:n-m]
l2 = l[n-m:n]

flag = 1   
for i in l2:
    if flag:   #如果是首个字符,则只输出数字
        print(int(i), end = '')
        flag = 0
    else:     #之后的字符输出 空格+数字
        print('{}{}'.format(' ', i), end = '')
flag = 1
for i in l1:
	if m == 0:   #如果m为0,则首个数字需要特殊处理
		if flag:
			print(int(i), end = '')
			flag = 0
		else:
			print('{}{}'.format(' ', i), end = '')
	else:      #m不为0,则正常输出 空格+数字
		print('{}{}'.format(' ', i), end = '')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值