首页 > 代码库 > FJNU-1152 Fat Brother And Integer

FJNU-1152 Fat Brother And Integer

Description

Fat brother recently studied number theory, him came across a very big problem — minimum does not appear positive integer. Fat brother get n positive integers, he needs to find out the least a positive integer and the positive integer is not in his n positive integers.

 

Input

There are multiple test cases. The first line of input contains an integer T (T <= 25) indicating the number of test cases. For each test case:

The first line contains a single integer n (1 <= n <= 1000)

The second line contains n positive integer ai ( 1 <= ai <= 1000000000)

 

Output

For each test case, output the minimum positive integer which didn’t appear in the n positive integer

 

 Sample Input

2

5

1 2 3 4 5

5

1 100 101 102 103

 

Sample Output

6

2


即给定数组,输出未出现在该数组中最小的数,注意要先排序,sort的用法。

#include <cstdio>
#include <algorithm>

int main(void)
{
    int t, n;
    int num[1100];
while(scanf("%d", &t) != EOF) { while(t--) { scanf("%d", &n); for(int i = 0; i < n; i++) { scanf("%d", &num[i]); }
std::sort(num, num+n); int i = 0; if(num[i] > 1) { printf("1\n"); } else { for(; i < n-1; i++) { if(num[i+1]-num[i] > 1) break; } printf("%d\n", num[i]+1); } } } return 0; }

 


STL中自带了排序函数——sort, 通常其表示为 sort(begin, end),即排序的区间、范围(需包涵<algorithm>和std)。

     

int main(void)
{
  int a[5] {1, 4, 6, 2, 3};
  std::sort(a, a+5);
  return 0;
}

 

 sort默认排序方式为从小到大排列,要想从大到小排列,可以自定义一个函数,做为 sort 的第三个参数。

int main(void)
{
    bool func(int, int);

    std::sort(a, a+5, func);
    
    return 0;
}    


bool func(int a, int b)
{
    return a>b;
}

 

 

 

FJNU-1152 Fat Brother And Integer