python题目描述 输入n个整数的序列a, 要求输出从中删除m个指定位置上的元素后的序列。 输入格式 第一行为两个整数,分别表示n和m 第二行为n个整数,表示序列a中的元素 第三行为m个整数,表示m个互不相同的位置。注意,m中的整数是按从小到大的顺序排列好的。 输出格式 一行,操作完毕后,a中元素值,用空格隔开 说明/提示 1 < m < n < 1000
时间: 2023-06-14 09:03:12 浏览: 110
python练习题 :用户任意输入10个整数到列表中,然后由大到小排列并输出。
以下是 Python 代码实现:
```python
n, m = map(int, input().split())
a = list(map(int, input().split()))
pos = list(map(int, input().split()))
# 删除指定位置上的元素
for i in range(m):
del a[pos[i]-i]
# 输出结果
print(' '.join(map(str, a)))
```
思路解析:
首先,我们读入输入的整数序列 a,以及要删除的指定位置 pos。然后,我们需要在 a 中删除这些指定位置上的元素。为了防止删除后下标出现偏差,我们可以从小到大依次删除,每次删除时需要将下标减去已经删除的元素个数。最后,我们将操作完毕后的 a 中元素值输出即可。
阅读全文