1.输入 n 及 n 个整数( n <20),然后按奇数升序、偶数降序排列输出。 N =6 n1=1 n2=90 n3=85 n4=2 n5=10 n6=18 odd =185 Even =9018102
时间: 2023-09-06 16:12:51 浏览: 179
下面是一个 Python 的实现:
```python
n = int(input())
nums = list(map(int, input().split()))
# 将奇数和偶数分别存储在不同的列表中
odd_nums = []
even_nums = []
for num in nums:
if num % 2 == 1:
odd_nums.append(num)
else:
even_nums.append(num)
# 对奇数升序排序,对偶数降序排序
odd_nums = sorted(odd_nums)
even_nums = sorted(even_nums, reverse=True)
# 将排序后的奇数和偶数合并输出
sorted_nums = odd_nums + even_nums
for num in sorted_nums:
print(num, end=' ')
```
使用上面的代码,对于输入样例,输出结果为:
```
1 85 90 18 10 2
```
相关问题
输入n及n个整数(n<20),然后按奇数升序、偶数降序排列输出。 N=6 n1=1 n2=90 n3=85 n4=2 n5=10 n6=18 odd=185 Even=9018102
下面是 Python 代码实现:
```python
n = int(input()) # 输入数量
nums = list(map(int, input().split())) # 输入整数并转换为列表
# 分别提取奇数和偶数列表
odd_nums = [num for num in nums if num % 2 == 1]
even_nums = [num for num in nums if num % 2 == 0]
# 对奇数列表升序排列,对偶数列表降序排列
odd_nums.sort()
even_nums.sort(reverse=True)
# 输出排序后的结果
print(" ".join(str(num) for num in odd_nums + even_nums))
```
输入示例:
```
6
1 90 85 2 10 18
```
输出示例:
```
1 85 90 18 10 2
```
其中,奇数列表为 `[1, 85]`,升序排列后为 `[1, 85]`;偶数列表为 `[90, 2, 10, 18]`,降序排列后为 `[90, 18, 10, 2]`,两个列表合并后为 `[1, 85, 90, 18, 10, 2]`。
给定一个 k 位整数 n=d \r\nk−1\r\n\r\n 10 \r\nk−1\r\n +⋯+d \r\n1\r\n\r\n 10 \r\n1\r\n +d \r\n0\r\n\r\n (0≤d \r\ni\r\n\r\n ≤9, i=0,⋯,k−1
这道题目是要我们找到一个k位数n,满足n的第一位是-1,第k位是d,而且n-1是10的倍数。
具体的情况可以通过列举几个数字来进行分析:
当k=2时,可得到的数字为-10、-20、-30、-40、-50、-60、-70、-80、-90。
当k=3时,可得到的数字为-109、-118、-127、-136、-145、-154、-163、-172、-181、-190。
当k=4时,可得到的数字为-1090、-1180、-1270、-1360、-1450、-1540、-1630、-1720、-1810、-1900。
可以发现,当k为偶数时,n-1的最后一位就是0,因此d的取值只能为0或5。
当k为奇数时,n-1的最后两位为90时,n就是10的倍数,此时d的取值可以为任何一个数字。
因此,该题的答案为:
当k为偶数时,d可以取0或5。
当k为奇数时,d可以取0、1、2、3、4、5、6、7、8、9。
阅读全文