测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A25683. 删除重复数编程实现给定包含 n 个整数的列表,从左到右查看每个整数,对于其中重复出现的整数,仅保留位置最靠右的那个整数,其余位置的重复整数均删除。输出删除所有重复整数后的列表。例如:n = 6;包含 6 个整数的列表为 [7, 10, 5, 5, 5, 10];其中重复出现的整数有 10、5,保留位置最靠右的 10 和 5,列表变为 [7, 5, 10]。输入描述第一行输入一个整数 n(1≤n≤…

填空题 容易

题目描述

删除重复数

编程实现

给定包含 n 个整数的列表,从左到右查看每个整数,对于其中重复出现的整数,仅保留位置最靠右的那个整数,其余位置的重复整数均删除。输出删除所有重复整数后的列表。

例如:n = 6;包含 6 个整数的列表为 [7, 10, 5, 5, 5, 10];其中重复出现的整数有 10、5,保留位置最靠右的 10 和 5,列表变为 [7, 5, 10]。

输入描述

第一行输入一个整数 n(1≤n≤105);

第二行输入 n 个整数(1≤整数≤105),表示列表中从左到右的整数,整数之间以一个空格隔开。

输出描述

按从左到右的顺序输出列表中的整数,表示删除重复整数后的结果,整数之间以一个空格隔开。

样例输入

6
7 10 5 5 5 10

样例输出

7 5 10

参考答案

n = int(input()) ls = list(map(int, input().split())) d = {} #字典记录值:位置 for i in range(len(ls)): d[ls[i]] = i t = sorted(d.items(), key = lambda x: x[1]) #按值排序 for i in t: print(i[0], end = ' ')
上一题 下一题