IP - Số IP của nhân viên

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Go, Java, Pascal, Perl, PHP, Python, Ruby, Rust, Scratch, Swift

Ở công ty IBN, mỗi nhân viên khi được nhận vào làm việc thì cũng được cho một số IP. Đương nhiên, các nhân viên trong công ty thì có số IP khác nhau. Khi Ktuan lên làm nhiệm vụ cung cấp IP cho nhân viên mới thì nhận ra rằng: người làm trước mình đã quá tắc trách, anh ta cung cấp IP rất không khoa học. Nhiệm vụ hiện nay của ktuan là cung cấp IP cho một nhân viên mới vào làm việc Ardiankp. Số IP cần cung cấp là số nguyên dương nhỏ nhất mà không trùng với số IP của bất cứ một nhân viên hiện nay.

Yêu cầu: Hãy giúp Ktuan giải quyết vấn đề trên.

Input

  • Dòng đầu gồm số ~N~ – số nhân viên trong công ty hiện nay ~(1≤ N ≤ 500000)~;
  • ~N~ dòng sau mỗi dòng tương ứng là số IP của lân lượt ~N~ nhân viên.

Output

  • Một dòng duy nhất chứa số IP cần tìm.

Sample

Input #1
3
1 2 3
Output #1
4
Input #2
3
2 3 5
Output #2
1
Input #3
3
1 4 7
Output #3
2

Problem source: Chuyên Sơn La Online Judge


Bình luận

Hãy đọc nội quy trước khi bình luận.



  • -1
    Viet0601  đã bình luận lúc 27, Tháng 3, 2024, 13:48

    include<stdio.h>

    include<math.h>

    include<string.h>

    include<ctype.h>

    include<stdlib.h>

    int ss(const voida,const voidb) { return (int)a - (int)b;

    }

    int main() { int n; scanf("%d",&n); int a[n]; for(int i=0;i<n;i++) { scanf("%d",&a[i]); } qsort(a,n,sizeof(int),ss); if(a[0]!=1) printf("1"); else { // 1 3 5 6; int k=0; int ok=1; while(k<n-1) { if(abs(a[k]-a[k+1])>=2) { printf("%d",a[k]+1); ok=0; break; } k++; } if(ok) printf("%d",a[n-1] + 1); } }


  • 0
    hohoanghai5042011  đã bình luận lúc 27, Tháng 1, 2024, 13:46

    #include <bits/stdc++.h>

    using namespace std; long long n,i,ip,a[100001]; int main(){ cin >> n; for (i=1;i<=n;i++) cin >> a[i]; sort(a+1,a+n+1); ip=1; for (i=1;i<=n;i++) if (ip==a[i]) ip++; cout<<ip; }

    full ac