题目描述
小Q发现小P和小H各有一个集合,但是小P的集合A和小H的集合B不一样,小P的集合A里有n个整数且无序,小H的集合B里有m个整数且有序,小Q有一个整数k,小Q想在集合A与集合B中找到一个整数使他们相加正好等于k。你能帮助小Q吗?
输入
第一行是三个整数n,m,k,分别表示集合A的大小、集合B的大小、k的值。(0<n<=100000,0<m<=100000,k在int范围内)
第二行是n个整数。代表小P的集合A中的数,每个数唯一(int范围内)
第二行是m个整数。代表小H的集合B中的数,每个数唯一(int范围内)
输出
请输出一行包含两个整数,分别表示集合A中的数与集合B中的数,整数之间有空格。(输入数据保证输出结果唯一)
样例输入 Copy
5 4 34
1 2 3 4 7``
10 20 30 40
样例输出 Copy
4 30
#include<stdio.h>
int main()
{
int n,m,k;
int f;
int z;
scanf("%d %d %d",&n,&m,&k);
int a[n-1];
int b[m-1];
for(int number=0;number<=n-1;number++)
{
scanf("%d",&a[number]);
}
//第一个数组的填充
for(int s=0;s<=m-1;s++)
{
scanf("%d",&b[s]);
}
//第二个数组的填充
for(int i=0;i<=n-1;i++)
{
f=a[i];
for(int j=0;j<=m-1;j++)
{
z=b[j];
if(a[i]+b[j]==k)
{
goto out;
}
}
}
out:
printf("%d %d",f,z);
return 0;
}