[编程题] 序列找数

时间限制:1秒

空间限制:32768K

从非负整数序列 0, 1, 2, ..., n中给出包含其中n个数的子序列,请找出未出现在该子序列中的那个数。

输入描述:

输入为n+1个非负整数,用空格分开。
其中:首个数字为非负整数序列的最大值n,后面n个数字为子序列中包含的数字。


 

输出描述:

输出为1个数字,即未出现在子序列中的那个数。

输入例子1:

3 3 0 1

输出例子1:

2
#include<stdio.h>
#include<stdlib.h>
int main()
{
    int n, i, j;
    int *p;
    scanf("%d", &n);
    p = (int *)malloc(sizeof(int) * n);
    for(i=0; i<n; i++)
    {
        scanf("%d", p+i);
    }
    for(i=0; i<=n; i++)
    {
        for(j=0; j<n; j++)
        {
            if(i == *(p+j))
            {
                break;
            }
        }
        if(j == n)
        {
            printf("%d", i);
            break;
        }
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_41245381/article/details/81603225