给定 N 个正整数,请按奇数和偶数将它们分开。 输入格式: 第一行给出一个正整数 N(2≤N≤20)。 第二行给出 N 个正整数,以空格分隔,保证其中既有奇数又有偶数。 输出格式: 按输入的先后顺序分别给出这 N 个正整
时间: 2025-01-05 09:37:59 浏览: 44
好的,我来为您解答这个问题。这个题目要求我们将给定的N个正整数按奇数和偶数分开,并按输入的顺序输出。以下是解决这个问题的步骤和示例代码:
- 首先读取输入的N值。
- 然后读取N个正整数,存储在一个列表中。
- 创建一个空的奇数列表和一个空的偶数列表。
- 遍历输入的列表,将奇数和偶数分别添加到对应的列表中。
- 最后按顺序输出奇数列表和偶数列表。
下面是Python语言的示例代码:
def separate_odd_even():
N = int(input()) # 读取N值
numbers = list(map(int, input().split())) # 读取N个正整数
odd_numbers = []
even_numbers = []
for num in numbers:
if num % 2 == 0:
even_numbers.append(num)
else:
odd_numbers.append(num)
print("奇数:", ' '.join(map(str, odd_numbers)))
print("偶数:", ' '.join(map(str, even_numbers)))
# 调用函数
separate_odd_even()
这段代码首先读取输入的N值和N个正整数,然后遍历这些数,将奇数和偶数分别添加到对应的列表中。最后,使用' '.join()将列表转换为字符串并输出。
这个解决方案的时间复杂度是O(N),其中N是输入的数字的个数。空间复杂度也是O(N),因为我们使用了额外的列表来存储奇数和偶数。
相关推荐
















