PTA The Missing Number (20 分)

Es la mente humana la que libera la luz infinita, y también es la mente humana la que crea la oscuridad ilimitada. La luz y la oscuridad se entrelazan y luchan juntas. Este es el mundo por el que estamos nostálgicos y desamparados.

Dados N enteros, se supone que debe encontrar el entero positivo más pequeño que NO está en la lista dada.

Especificación de entrada:

Cada archivo de entrada contiene un caso de prueba. Para cada caso, la primera línea da un número entero positivo N (≤10 5). Luego se dan N números enteros en la siguiente línea, separados por espacios. Todos los números están en el rango de  int .

Especificación de salida:

Imprime en una línea el número entero positivo más pequeño que falta en la lista de entrada.

Entrada de muestra:

10
5 -25 9 6 1 3 4 2 5 17

Salida de muestra:

7
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <string>
#include <cstring>
#include <cstdlib>
#include <cmath>
#include <stack>
#include <queue>
#include <set>
#include <map>
#include <vector>
#include <ctime>
#include <cctype>
#include <bitset>
#include <utility>
#include <sstream>
#include <complex>
#include <iomanip>
#include<climits>//INT_MAX
//#include<bits/stdc++.h>
#define PP pair<ll,int>
#define inf 0x3f3f3f3f
#define llinf 0x3f3f3f3f3f3f3f3fll
#define dinf 1000000000000.0
#define PI 3.1415926
typedef long long ll;
using namespace std;
int const mod=1e9+7;
const int maxn=1000100;
bool fg[maxn]={false};
int n,num;
int main(){
    scanf("%d",&n);
    for(int i=0; i<n; i++){
        scanf("%d",&num);
        if(num>0&&num<maxn)
            fg[num]=true;
    }
    for(int i=1; i<maxn; i++){
        if(fg[i]==false){
            printf("%d",i);
            return 0;
        }
    }
    return 0;
}

 

Supongo que te gusta

Origin blog.csdn.net/weixin_44170305/article/details/108526620
Recomendado
Clasificación