PAT1041 Be Unique

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PAT1041 Be Unique相关的知识,希望对你有一定的参考价值。

题目:PAT1041

 

题解:本来我是想放到队列里,每碰到一个和队头相同的,就把队头弹出。本以为最后队头就是结果,然后发现并不适合第二种情况。

   于是还是使用了标记的方法,对输入的数字进行标记。最后输出第一个标记为1的就行。

 

代码:

  

 1 #include<cstdio>
 2 #include<cstring>
 3 using namespace std;
 4 
 5 int num[10005],n,m[100005];
 6 bool f;
 7 
 8 int main()
 9 {
10     scanf("%d",&n);
11     f=false;
12 
13     memset(num,0,sizeof(num));
14 
15     for(int i=0;i<n;i++)
16     {
17         scanf("%d",&m[i]);
18         num[m[i]]++;
19     }
20 
21 
22     for(int i=0;i<n;i++)
23     {
24         if(num[m[i]]==1)
25         {
26             printf("%d\n",m[i]);
27             f=true;
28             break;
29         }
30     }
31 
32     if(!f) printf("None");
33 
34     return 0;
35 
36 }

 

以上是关于PAT1041 Be Unique的主要内容,如果未能解决你的问题,请参考以下文章

pat(A)1041. Be Unique(哈希)

pat 1041 Be Unique(20 分)

PAT 甲级 1041 Be Unique

PAT甲级1041 Be Unique (20 分)(多重集)

PAT Advanced 1041 Be Unique (20分)

PAT Advanced 1041 Be Unique (20 分)