#include <iostream>
#include <stdlib.h>
using namespace std;
void func()
{
int n;
while(cin>>n)
{
int a[201]={0};
int first;// 0位单独表示
for(int i=0;i<n;i++)
{
int t;
cin>>t;
if(i==0)first=t;
a[t]=i;
}
int n;
cin>>n;
if(n==first)cout<<0<<endl;
else if(a[n]==0)cout<<-1<<endl;
else cout<<a[n]<<endl;
}
}
int main(int argc, char *argv[])
{
//printf("Hello, world\n");
func();
return 0;
}
以每个数值作KEY进行HASH,保存下标为VALUE
-
题目描述:
-
输入一个数n,然后输入n个数值各不相同,再输入一个值x,输出这个值在这个数组中的下标(从0开始,若不在数组中则输出-1)。
-
输入:
-
测试数据有多组,输入n(1<=n<=200),接着输入n个数,然后输入x。
-
输出:
-
对于每组输入,请输出结果。
-
样例输入:
-
2 1 3 0
-
样例输出:
-
-1
本文介绍了一个简单的C++程序,用于实现数组查找算法。程序通过读取一系列整数并存储在一个数组中,然后根据用户输入的特定数值,在数组中查找该数值的位置。如果找到,则返回其在数组中的下标;如果未找到,则返回-1。
814

被折叠的 条评论
为什么被折叠?



