重名剔除(Deduplicate)

技术重名剔除(Deduplicate) 重名剔除(Deduplicate)清华OJ——数据结构与算法实验(中国石油大学)重名剔除(Deduplicate)Description
Mr. Epicure

重名剔除(消除重复数据)

清华OJ——数据结构与算法实验(中国石油大学)

重名剔除(Deduplicate)

Description

伊壁鸠鲁先生正在编纂一本食品百科全书。他收集了一长串由几个肚腩提名的候选人名单。由于名单中的候选人是由几个人提名的,名字重复是不可避免的。伊壁鸠鲁先生拜访你寻求帮助。他要求你消除所有重复,这对你来说是一项容易的任务。所以请抓住这个机会,让所有的肚腩都出名。

Input

第一行一个整数表示提名名单的长度。在接下来的n行中,每一行都给出了每个提名。

Output

所有重复的提名(如果重复出现多次,则只输出一次),按照重复首先出现的顺序排序。

Example

投入

10

奶油蛋卷

卡门伯特

意大利水饺

萨伐仑松饼

切达干酪

意大利水饺

特尔尼

羊角面包

奶油蛋卷

mapotoufu

输出

意大利水饺

奶油蛋卷

Restrictions

1 n 6 * 10^5

所有提名都是小写的。不包括其他字符。每个项目的长度不超过40。

时间: 2秒

内存: 256兆字节

Hints

混杂

描述

老饕老师正在编撰一本美食百科全书。为此,他已从众多的同好者那里搜集到了一份冗长的美食提名清单。既然源自多人之手,其中自然不乏重复的提名,故必须予以筛除伊壁鸠鲁老师因此登门求助,并认定此事对你而言不过是"一碟小菜",相信你不会错过在美食界扬名立万的这一良机

输入

第一行为一个整数n,表示提名清单的长度。以下n行各为一项提名

输出

所有出现重复的提名(多次重复的仅输出一次),且以其在原清单中首次出现重复(即第二次出现)的位置为序

样例

见英文题面

限制

1 n 6 * 10^5

提名均由小写字母组成,不含其它字符,且每项长度不超过40

时间:2秒

空间:256兆字节

提示

散列

1 #包括ecstdio

2 #包括字符串

3 #定义N 605000

四使用命名空间标准;

5个常量无符号长长基数=27;

6

七个字符[无][45];

8

9结构

10 {

11 int索引;

12个无符号长长h;

13

14 bool运算符(常量s)常量

15 {

16 if(h!=s.h)返回hs.h

17返回索引

18 }

19 };

20党卫队逮捕[N];

21 int vis[N]={ 0 };

22不锈钢;

23

24空排序(国际,国际)

25 {

26 if(l==r)返回;

27 int mid=(l r)/2;

28排序(l,中);

29排序(中间1,r);

30

31 int c1=l,C2=mid 1;

32 int c=l;

33

34 while(c1=midc2=r)

35 {

36 if(arr[C1]arr[C2])ls[c]=arr[C1];

其他37个

38ls[c]=arr[C2];

39 }

40

41而(C1=中)ls[c]=arr[C1];

42而(C2=r)ls[c]=arr[C2];

43表示(int I=l;I=r;一)arr[I]=ls[I];

44 }

45

46 int main()

47 {

48 int n;

49 scanf('%d ',n);

50表示(int I=0;在;(一)

51 {

52 scanf('%s ',s[I]);

53 int len=strlen(s[I]);

54无符号很长很长现在=0;

55

对于(int j=0;jlenj)

57 {

58 now=now * base s[I][j];

59 }

60 arr[i].索引=我;

61 arr[i].h=现在;

62 }

63

64排序(0,n-1);

65 int C1=1;

66

67//for(int I=0;在;i )printf('%llu %d\n ',arr[i].啊,啊[我]。索引);

68

69 while(c1n)

70 {

71 if(arr[c1]).h==arr[c1-1].h)

72 {

73 vis[arr[C1]].index]=1;

74 while(arr[c1]).h==arr[c1-1].C1;

75 }

76其他

77 {

78 c1

79 }

80 }

81

82表示(int I=0;在;(一)

83 if(vis[i])printf('%s\n ',s[I]);

84

85返回0;

86 }

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/121790.html

(0)

相关推荐

  • MySQL重要知识点都有哪些

    技术MySQL重要知识点都有哪些这篇文章给大家介绍MySQL重要知识点都有哪些,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。什么是MySQL?MySQL 是一种关系型数据库,在Java企业级开发中非

    2021年11月16日
  • ios15 beta2什么时候出(xsmax ios15建议更新吗)

    技术iOS 9适配中会遇到的问题有哪些这篇文章主要介绍iOS 9适配中会遇到的问题有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、NSAppTransportSecurityiOS9让所有

    攻略 2021年12月24日
  • JavaScript中立即执行函数格式有哪些

    技术JavaScript中立即执行函数格式有哪些这篇文章主要介绍JavaScript中立即执行函数格式有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在JavaScript中有时候看到一些很神

    攻略 2021年11月12日
  • Python与C++引用的示例分析

    技术Python与C++引用的示例分析本篇文章给大家分享的是有关Python与C++引用的示例分析,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。在用Pyth

    攻略 2021年10月25日
  • 如何随机获取oracle数据库中的任意一行数据

    技术如何随机获取oracle数据库中的任意一行数据小编给大家分享一下如何随机获取oracle数据库中的任意一行数据,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!对于rownum来说它是oracle系统顺

    攻略 2021年11月12日
  • 怎样看出仓鼠喜欢主人,仓鼠信任主人的表现有哪些

    技术怎样看出仓鼠喜欢主人,仓鼠信任主人的表现有哪些1怎样看出仓鼠喜欢主人、主人开笼子的时候,仓鼠只是抬头看看不会躲藏。 2、打开笼子手伸过去也没有躲闪。
    3、用手抓仓鼠,它没有明显的反抗,甚至很舒适的躺在手里。
    4、在

    生活 2021年10月30日