[英]delete first/last occurrence in list python
我需要删除列表中的所有第一次出现。
时间限制 = 2 秒。
memory 限制 = 256 mb。
给定列表a。 重复中的一些元素。 如果 len(a) = 1 打印 0。
输入:1 1 5 2 4 3 3 4 2 5。
Output:1 3 4 2 5
我的解决方案:对于 48 测试 22 - 好。 否则 - 时间有限。 没有.count如何解决
n = int(input())
A = list(map(int, input().split()))
C = []
if len(A) == 1:
print(0)
else:
for j in range(n):
if A[:j].count(A[j]):
C.append(A[j])
print(len(C))
print(*C)
请帮忙
使用集合的另一种方法
第一的
n = input().split(" ")
u = []
if(len(n) == 1): print(0, end="")
else:
d = {}
for a in n:
if a in d: u.append(int(a))
else: d[a] = 1
print(*u, end="")
# input: 1 1 5 2 4 3 3 4 2 5
# output: 1 3 4 2 5
# input: 5
# output: 0
# input: 1 1 1 1
# output: 1 1 1
最后的
n = input().split(" ")
u = []
if(len(n) == 1): print(0, end="")
else:
n.reverse()
d = {}
for a in n:
if a in d: u.append(int(a))
else: d[a] = 1
u.reverse()
print(*u, end="")
# # input: 1 1 5 2 4 3 3 4 2 5
# # output: 1 5 2 4 3
# # input: 5
# # output: 0
# # input: 1 1 1 1
# # output: 1 1 1
要删除重复项,请使用 set()
_ = input()
A = set(map(int, input().split()))
print(*list(A))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.