题目:现在给你一个整数n,和n−1个互不相同的整数a1,a2,…,an−1,这些数字是1..n排列的一部分,但缺失了一个数。现在问你缺失的数是多少。
代码:
#include<iostream>
using namespace std;
int main()
{
int n,t,i,j;
cin>>n;
int a[n-1];
for(i=0;i<n-1;i++)
{
cin>>a[i];
}
for(i = 0; i < n - 2; i++)
{
for(j = 0; j < n - i - 2; j++)
{
if (a[j] > a[j+1])
{
t = a[j];
a[j] = a[j + 1];
a[j + 1] = t;
}
}
}
int m = 0;
for(i=1;i<=n;i++){
if(a[m++]!=i){
cout<<i<<" ";
m--;
}
}
return 0;
}
大抵思路:
除了整理数组以外思路如图示。
如图所示
特别鸣谢:
特别鸣谢:Huazie。