OpenJudge计算概论-第二个重复出现的数

复制代码
/*========================================================================
第二个重复出现的数
总时间限制:
    1000ms
内存限制:
    65536kB
描述
    给定一个正整数数组(元素的值都大于零),输出数组中第二个重复出现的正整数,如果没有,则输出字符串"NOT EXIST"。
输入
    第一行为整数m,表示有m组数据。
    其后每组数据分两行:
    第一行为正整数n(3 < n < 500),表示数组的长度;
    第二行是n个正整数,正整数间用空格分开。
输出
    有m行输出,每行输出对于数组中第二个重复出现的正整数,如果没有,则输出字符串"NOT EXIST"。
样例输入
    5
    10
    1 3 5 7 9 7 8 5 2 6
    10
    1 3 5 5 7 9 7 8 2 6
    10
    1 3 5 5 7 9 4 8 2 6
    10
    1 3 5 7 2 9 9 8 7 5
    10
    1 3 5 2 7 9 9 8 7 5
样例输出
    7
    7
    NOT EXIST
    7
    7
==========================================================================*/
复制代码
复制代码
 1 #include<stdio.h>
 2 int main()
 3 {
 4     int m,n,a[505],i,j,flag;
 5     freopen("3.in","r",stdin);
 6     scanf("%d",&m);
 7     while(m>0)
 8     {
 9         scanf("%d",&n);
10         for(i=0;i<n;i++)
11         {
12             scanf("%d",&a[i]);
13         }
14         flag=0;
15         for(i=0;i<n-1;i++)
16         {
17             for(j=i+1;j<n;j++)
18             {
19                 if(a[j]==a[i])
20                 {
21                     flag++;
22                     break;
23                 }
24             }
25             if(flag==2)
26             {
27                 printf("%d\n",a[i]);
28                 break;
29             }
30         }
31         if(flag!=2) printf("NOT EXIST\n");
32         m--;
33     }
34     return 0;
35 }
复制代码

这个题用两重循环扫描数组即可,时间复杂度是n2级别。

posted on   华山青竹  阅读(828)  评论(0编辑  收藏  举报

编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示