#5878. 查找数组元素地址2

查找数组元素地址2

题目描述

已知以下程序:

#include <bits/stdc++.h>
using namespace std;
// 请在此处实现 find 函数 
// ...
int a[110];
int main() {
	int n;
	cin >> n;
	for (int i = 1; i <= n; i++) {
		cin >> a[i];
	}
	int v;
	cin >> v;
	int *add = find(a + 1, a + n + 1, v);
	if (add == a + n + 1) cout << -1 << endl;
	else cout << add - a << endl;
	return 0;
}

主函数的作用是:

  • 输入 nn 个正整数到数组 a 中,再输入一个正整数 v
  • 通过 find 函数查找数组 a 中第一个 v 的地址;
  • 最后通过计算输出第一个 v 的下标;
  • 如果不存在 v 则输出 -1

你的任务是实现 find 函数:

  • 传入 a + 1a + n + 1v
  • 返回数组 a 中第一个 v 的地址。
  • 如果不存在 v,则返回 a + n + 1

题型说明

解题时可以把题目提供的程序复制到编译器中,编写对应所需的函数,测试通过后只需要提交所需的函数,如果提交完整程序反而会 WA

格式要求

输入格式

第一行输入一个整数 n(1n100)n(1 \leq n \leq 100)

接下来一行输入 nn 个不超过 100100 的正整数。

最后输入一个整数 v(1v100)v(1 \leq v \leq 100)

输出格式

输出一个整数。

样例

4
1 7 4 7
7
2