有n个数字,值就是1~n,现发现丢失了2个数字,请你根据剩余的n-2个数字,编程计算一下,缺失的是哪两个数字呢?
(使用桶排,标记输入过的数字)
#include<bits/stdc++.h>
using namespace std;
int num[101];
int main(){
int n,t;
cin >> n;
int num[n+1] = {0}; //依靠下标来计数,若输入了对应数字,数组下标标记为1
for(int i=1;i<=n-2;i++){
cin >> t;
num[t] = 1; //输入了对应数字,数组下标标记为1
}
for(int i=1;i<=n;i++)
if(num[i] == 0) //若该下标没被标记为1,代表没有输入
printf("%d ",i);
return 0;
}