📅  最后修改于: 2023-12-03 15:42:22.800000             🧑  作者: Mango
本题目为门|门CS 2012年比赛的第56道题目,题目要求写一个程序来处理输入输出,完成特定的功能。
具体题目要求为:
给出一个由若干个空格分隔数字组成的字符串,要求将其转换为整数数组并排序,然后将排序后的结果输出。
输入为一个由空格分隔的数字字符串,其中数字字符串中的数字个数不超过100000,数字之间用空格分隔。
输出为排序后的数字数组,其中相邻的数字中间使用一个空格分隔。
输入:
9 3 7 1 8 2 4 6 5
输出:
1 2 3 4 5 6 7 8 9
题目要求将一串按空格分隔的数字字符串转换成整数数组,并对该数组进行排序,最后将排序后的数组输出。
首先需要将输入数据从字符串转换成数字数组,在此可以使用Python内置的map
函数,将每个字符串转换成数字。接着将该数组进行排序,最后使用join
函数将排序后的数组拼接成字符串输出即可。
def sort_num_string(num_str):
# 将数字字符串转换成数字数组
num_list = list(map(int, num_str.split()))
# 将数字数组进行排序
num_list.sort()
# 将排序后的数字数组拼接成字符串
sorted_str = ' '.join(map(str, num_list))
# 返回排序后的数字数组
return sorted_str
assert sort_num_string('9 3 7 1 8 2 4 6 5') == '1 2 3 4 5 6 7 8 9'
assert sort_num_string('1 1 1 1 1') == '1 1 1 1 1'
assert sort_num_string('2 2 1 1 3 3') == '1 1 2 2 3 3'