问题描述
给出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个。
输入格式
第一行包含一个整数n。
第二行包含n个非负整数,为给定的数列,数列中的每个数都不大于10000。
第三行包含一个整数a,为待查找的数。
输出格式
如果a在数列中出现了,输出它第一次出现的位置(位置从1开始编号),否则输出-1。
样例输入
6
1 9 4 8 3 9
9
样例输出
2
数据规模与约定
1 <= n <= 1000。
思路: 按照题目要求输入n,先设一个值为-1的变量temp,这样如果数列中没有a就可以直接输出-1。输出要求位置从1开始,所以直接在数组中加1,之后输入第二行和第三行,再判断a出现的位置并输出即可。
源代码如下(通过测试):
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc =new Scanner(System.in);
//输入整数n
int n = sc.nextInt();
int temp=-1;
int [] arr= new int [n+1];
for (int i = 1; i <=n; i++) {
arr[i]=sc.nextInt();
}
int a = sc.nextInt();
//判断是否和a相等,若相等记录并输出其下标,若不相等直接输出temp的值
for (int i = 1; i <=n; i++) {
if (arr[i]==a) {
temp=i;
break;
}
}
System.out.println(temp);
}
}