題目描述
在一個給定的無序序列裏,查找與給定關鍵字相同的元素,若存在則輸出找到的元素在序列中的位序和需要進行的比較次數,不存在則輸出"No",序列位序從1到n,要求查找從最後一個元素開始,序列中無重複元素。
輸入
連續多組數據輸入,每組輸入數據第一行首先輸入兩個整數n(n <= 1000000)和k,n是數組長度,k是待查找的關鍵字,然後連續輸入n個整數,數據間以空格間隔。
輸出
若存在則輸出元素在序列中的位序和比較次數,不存在則輸出No。
示例輸入
5 9 4 6 8 9 13 7 4 -1 3 2 5 4 6 9 20 90 4 6 8 9 13 17 51 52 54 59 62 66 76 78 80 85 88 17 20 21
示例輸出
4 2 5 3 No
提示
來源
xam
#include<iostream>
using namespace std;
int a[1000100];
int main()
{
int n,k;
while(cin>>n>>k)
{
for(int i=0;i<n;i++)
{
cin>>a[i];
}
int c=0,l,m;
int flog=0;
for(int i=n-1;i>=0;i--)
{
c++;
if(a[i]==k)
{
m=i+1;
l=c;
flog=1;
break;
}
}
if(flog==1)
{
cout<<m<<" "<<l<<endl;
}
else
{
cout<<"No"<<endl;
}
}
return 0;
}