算法题:出现

简介: 题目:给定 n 个自然数,求没有在这 n 个自然数中出现过的最小的自然数是多少。

题目:

给定 n 个自然数,求没有在这 n 个自然数中出现过的最小的自然数是多少。

注意,0 也是自然数。

输入格式:

第一行输入一个正整数 n。

第二行输入给定的 n 个自然数,相邻两个自然数之间用一个空格隔开。

输出格式:

输出只有一行,一个自然数,表示没有在输入的 n 个自然数中出现过的最小的自然数。

数据范围:

1≤n≤1000,

输入的 n 个自然数都不大于 1000。

输入样例1:

7

2 1000 7 0 1 2 5

输出样例1:

3

输入样例2:

5

1 2 3 4 5

输出样例2:

0

样例解释:

样例 1 中,输入的自然数中,0、1、2 出现了,3 没有出现,所以答案是 3。

样例 2 中,输入的自然数中,0 没有出现,所以答案是 0。

分析:

这道题真的不难,但是我还是卡了半天,一检查原来n没有输出,气死我也,哈哈哈1!

源码:

#include <iostream>

include

include

using namespace std;

int arr[1001]={};

int main()

{

int n;
cin>>n;               //就是这一步,忘记写了(苦笑)
for(int i=0;i<n;i++)
{
int a;
cin >> a;
    arr[a]=-1;
}
for(int i=0;i<1001;i++)
{
if(arr[i]==0)
    {
cout << i<<endl;
break;
    }
}
return 0;

}


目录
相关文章
|
1月前
|
算法 机器人
算法题(3)
算法题(3)
39 5
|
2月前
|
算法
Manacher(马拉车)算法详解
该文章详细解释了Manacher算法,这是一种高效找出给定字符串最长回文子串的算法,通过在字符串中插入特殊字符构建新的字符串,并利用中心扩展策略来找出最长回文序列,时间复杂度为O(N),空间复杂度为O(N)。
|
3月前
|
存储 算法 网络安全
|
3月前
|
算法 调度 C#
|
算法
秒懂算法 | 基环树
图论是一个“巨大”的专题,有大量的知识点,有众多广为人知的问题,有复杂的应用场景。 图论算法常常建立在复杂的数据结构之上。
313 0
秒懂算法 | 基环树
|
机器学习/深度学习 人工智能 算法
秒懂算法 | 尺取法
尺取法(又称为:双指针、two pointers),是算法竞赛中一个常用的优化技巧,用来解决序列的区间问题,操作简单、容易编程。 本篇介绍了尺取法的概念、反向扫描、同向扫描、模板、典型题目。
369 1
秒懂算法 | 尺取法
|
算法 数据安全/隐私保护
《算法》世界 二
一.算法要素 1.数据对象的运算和操作:计算机可以执行的基本操作是以指令的形式描述的。一个计算机系统能执行的所有指令的集合,成为该计算机系统的指令系统。一个计算机的基本运算和操作有如下四类: 1.算术运算:加减乘除等运算 2.逻辑运算:或、且、非等运算 3.关系运算:大于、小于、等于、不等于等运算 4.数据传输:输入、输出、赋值等运算 2.算法的控制结构:一个算法的功能结构不仅取决于所选用的操作,而且还与各操作之间的执行顺序有关。
170 1
《算法》世界 二
|
算法
【算法之初步认识】
【算法之初步认识】
140 0
【算法之初步认识】
拓展欧几里得算法
拓展欧几里得算法
80 0
|
算法
算法题:干草堆
贝茜对她最近在农场周围造成的一切恶作剧感到抱歉,她同意帮助农夫约翰把一批新到的干草捆堆起来。 开始时,共有 N 个空干草堆,编号 1∼N。 约翰给贝茜下达了 K 个指令,每条指令的格式为 A B,这意味着贝茜要在 A..B 范围内的每个干草堆的顶部添加一个新的干草捆。
72 0