首页 > 试题广场 >

找x

[编程题]找x
  • 热度指数:21842 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 64M,其他语言128M
  • 算法知识视频讲解
输入一个数n,然后输入n个数值各不相同,再输入一个值x,输出这个值在这个数组中的下标(从0开始,若不在数组中则输出-1)。

输入描述:
测试数据有多组,输入n(1<=n<=200),接着输入n个数,然后输入x。


输出描述:
对于每组输入,请输出结果。
示例1

输入

2
1 3
0

输出

-1
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int n = Integer.parseInt(br.readLine());
        String[] s = br.readLine().split(" ");
        String aim = br.readLine();
        int flag = 0;
        for (int i = 0; i < s.length; i++) {
            if (s[i].equals(aim)) {
                System.out.println(i);
                flag = 1;
                break;
            }
        }
        if (flag == 0) System.out.println(-1);

    }
}


发表于 2021-02-18 20:14:18 回复(0)
import java.util.*;
public class Main
{
    public static void main(String [] args)
    {
        Scanner sc=new Scanner(System.in);
        while(sc.hasNextInt())
        {
            int n=sc.nextInt();
            int [] arr=new int[n];
            for(int i=0;i<n;i++)
            {
                arr[i]=sc.nextInt();
            }
            int x=sc.nextInt();
            int index=-1;
            for(int i=0;i<n;i++)
            {
                if(arr[i]==x)
                {
                    index=i;
                }
            }
             System.out.println(index);
        }
    }
}
发表于 2020-03-27 21:10:13 回复(0)
Java 解法
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        int[] record = new int[n];
        for (int i = 0; i < n; i++) {
            record[i]=scanner.nextInt();
        }
        int search = scanner.nextInt();
        for (int i = 0; i < n; i++) {
            if (record[i]==search){
                System.out.println(i);
                return;
            }
        }
        System.out.println(-1);
    }
}


发表于 2020-03-07 10:03:59 回复(0)
import java.util.*;
public class FindKey {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] array = new int[n];
        for (int i = 0; i < n; i++) {
            array[i] = sc.nextInt();
        }
        int x = sc.nextInt();
        findKey(array, x);
    }

    public static void findKey(int[] s, int k) {
        for (int j = 0; j < s.length; j++) {
            if (s[j] == k) {
                System.out.println(j);
                break;
            }
            if (j == s.length-1) {
                System.out.println("-1");
            }

        }
    }
}

发表于 2019-12-07 00:46:10 回复(0)
import java.util.Scanner;
/**
 * @author Allen_Hua
 * @create_time 创建时间:May 13, 2018 3:33:02 PM 类说明
 */
public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        while (scan.hasNext()) {
            int n = scan.nextInt();
            int[] data = new int[n];
            for (int i = 0; i < data.length; i++) {
                data[i] = scan.nextInt();
            }
            int x = scan.nextInt();
            System.out.println(findX(x, data));
        }
    }
    /**
     * 找到x的下标 找不到返回-1
     **/
    private static int findX(int x, int[] data) {
        // TODO Auto-generated method stub
        for (int i = 0; i < data.length; i++) {
            if (x == data[i]) {
                return i;
            }
        }
        return -1;
    }
}
编辑于 2018-05-13 15:37:53 回复(0)