數據結構實驗之查找六:順序查找

題目描述

在一個給定的無序序列裏,查找與給定關鍵字相同的元素,若存在則輸出找到的元素在序列中的位序和需要進行的比較次數,不存在則輸出"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;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章