给出一串数字,如,1, 2, 3, 4, 5, 8, 10, 11, 12, 13, 20, 21, 22;
如何按照格式[1-5] [8] [10-13] [20-22]输出
这是一道编程题
给出一串数字,如,1, 2, 3, 4, 5, 8, 10, 11, 12, 13, 20, 21, 22;
如何按照格式[1-5] [8] [10-13] [20-22]输出
这是一道编程题
# -*- coding: utf-8 -*-
# Python3
# 输入格式:1, 2, 3, 4, 5, 8, 10, 11, 12, 13, 20, 21, 22
seq = list(map(int, input().split(',')))
tmp = [seq[0]]
all_list = []
for n in range(len(seq)):
if n == len(seq) - 1:
all_list.append(tmp)
break
if seq[n + 1] - seq[n] == 1:
tmp.append(seq[n + 1])
else:
all_list.append(tmp)
tmp = [seq[n + 1]]
for a in all_list:
if len(a) > 1:
print('[%s-%s]' % (a[0], a[-1]))
else:
print('[%s]' % a[0])