虽然 Miss Medusa 到了北京,领了科技创新奖,但是她还是觉得不满意。原因是:他发现很多人都和她一样获了科技创新奖,特别是其中的某些人,还获得了另一个奖项——特殊贡献奖。而越多的人获得了两个奖项,Miss Medusa就会越眼红。于是她决定统计有哪些人获得了两个奖项,来知道自己有多眼红。 Input 第一行两个整数 � , � n,m,表示有 � n 个人获得科技创新奖, � m 个人获得特殊贡献奖。 第二行 � n 个正整数,表示获得科技创新奖的人的编号。 第三行 � m 个正整数,表示获得特殊贡献奖的人的编号。 Output 输出一行,为获得两个奖项的人的编号,按在科技创新奖获奖名单中的先后次序输出。用c语言实现
时间: 2024-04-16 12:27:29 浏览: 107
你好!很高兴回答你的问题。下面是一个用C语言实现的例子,用于统计获得两个奖项的人的编号:
```c
#include <stdio.h>
void findCommonElements(int arr1[], int n1, int arr2[], int n2) {
int i = 0, j = 0;
while (i < n1 && j < n2) {
if (arr1[i] < arr2[j]) {
i++;
} else if (arr1[i] > arr2[j]) {
j++;
} else {
printf("%d ", arr1[i]);
i++;
j++;
}
}
}
int main() {
int n, m;
scanf("%d %d", &n, &m);
int sciPrize[n];
int specPrize[m];
for (int i = 0; i < n; i++) {
scanf("%d", &sciPrize[i]);
}
for (int i = 0; i < m; i++) {
scanf("%d", &specPrize[i]);
}
findCommonElements(sciPrize, n, specPrize, m);
return 0;
}
```
这段代码首先读取输入的两个整数 n 和 m,分别表示获得科技创新奖和特殊贡献奖的人数。然后,它会读取 n 个整数,表示获得科技创新奖的人的编号;接着读取 m 个整数,表示获得特殊贡献奖的人的编号。
最后,使用 `findCommonElements` 函数来找出获得两个奖项的人的编号,并按照在科技创新奖获奖名单中的先后次序输出。
希望这个例子能对你有所帮助!如有任何疑问,请随时问我。
阅读全文