计蒜客 第二十一题 排序后的数组删除重复数字

给定升序排序的数组,如果数组有 22 个或 22 个以上相同的数字,去掉他们,直到剩下 22 个为止。

例如:

数组 A[] = [1,1,1,2,2,3]

你的算法需要返回新数组的长度 5,

此时 A 为 [1,1,2,2,3]。

输入格式

第一行输入一个不超过 200 的数字 n,第二行输入 A[n]。

输出格式

输出新数组的长度。

样例输入

6
1 1 1 1 3 3
样例输出

4
做完之后看了一下 发现这样即使乱序也没问题。

X = input()
A = input().split()
#建字典记录元素个数
B = {} 
#记录删除次数
d = 0
for a in range(len(A)): 
    if A[a-d] not in B: 
        B[A[a-d]] = 1
    elif B[A[a-d]] < 2:
        B[A[a-d]] = B[A[a-d]] + 1
    else:
        del A[a-d]
        d = d + 1

print(len(A))
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 在C语言中,五种基本数据类型存储空间长度的排列顺序是: A)char B)char=int<=float C)ch...
    夏天再来阅读 4,149评论 0 2
  • 拆页二 得体表达抱怨 《管理技能开发(第8版)》,摘录自429~430页 【R阅读原文片段】 戈登描述了一个帮你有...
    吴美澄阅读 214评论 1 0
  • 第一️@首先准备好4个内容: 1,身份证正、反面; 2,手持身份证拍照(不能戴眼镜,照片要清晰,不能美颜); 3,...
    Enya燕子阅读 217评论 0 0
  • 每每晚自习回家,路过十字街口,总能见得黛青色的天幕上,悬一轮明月,月光照下,落在路头处的交警身上。 ...
    April2005阅读 152评论 0 0
  • 记得非常年幼的我,是活泼开朗,调皮捣蛋,对世界充满好奇和追求的。 后来,我变得内向,胆小,闭塞,没有自我,自卑……...
    増言心语阅读 480评论 0 1

友情链接更多精彩内容