stringstream可以吞下不同类型,然后吐出接收对象对应的类型
#include<bits/stdc++.h>
using namespace std;
int x[100005];
int book[100005];
int main()
{
int n;
scanf("%d", &n);
getchar();
string a[105];
for(int i=1; i<=n; i++)
getline(cin,a[i]);
int len=0;
int t,q,w;
int minn,maxx;
minn=99999999;
maxx=-1;
for(int i=1; i<=n; i++)
{
stringstream ss(a[i]);
while(ss>>t)
{
x[++len]=t;
}
}
for(int i=1; i<=len; i++)
{
minn=min(minn,x[i]);
maxx=max(maxx,x[i]);
book[x[i]]++;
if(book[x[i]]>1)
{
w=x[i];
}
}
for(int i=minn; i<=maxx; i++)
{
if(book[i]==0)
{
q=i;
break;
}
}
printf("%d %d", q, w);
}