Problem Description
在一個給定的無序序列裏,查找與給定關鍵字相同的元素,若存在則輸出找到的元素在序列中的位序和需要進行的比較次數,不存在則輸出"No",序列位序從1到n,要求查找從最後一個元素開始,序列中無重複元素。
Input
連續多組數據輸入,每組輸入數據第一行首先輸入兩個整數n(n <= 1000000)和k,n是數組長度,k是待查找的關鍵字,然後連續輸入n個整數,數據間以空格間隔。
Output
若存在則輸出元素在序列中的位序和比較次數,不存在則輸出No。
Example Input
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
Example Output
4 2 5 3 No
#include<stdio.h>
#include<stdlib.h>
int sq[1000000];
int main()
{
int n,k,f;
while(scanf("%d%d",&n,&k)!=EOF)
{
f = -1;
for(int i=0;i < n;i++)
{
scanf("%d",&sq[i]);
if(k==sq[i])
{
f = i;
}
}
f==-1?printf("No\n"):printf("%d %d\n",f+1,n-f);
}
return 0;
}