順序表應用
6:有序順序表查詢
timelimit: 7ms memory limit: 700kb
submit
statistic
problemdescription
順序表內按照由小到大的次序存放著
n個互不相同的整數(
1<=n<=20000)
,任意輸入乙個整數,判斷該整數在順序表中是否存在。如果在順序表中存在該整數,輸出其在表中的序號;否則輸出「
nofound!"
。 input
第一行輸入整數
n,表示順序表的元素個數;
第二行依次輸入
n個各不相同的有序整數,代表表裡的元素;
第三行輸入整數
t,代表要查詢的次數;
第四行依次輸入
t個整數,代表每次要查詢的數值。
output 輸出
t行,代表
t次查詢的結果,如果找到在本行輸出該元素在表中的位置,否則本行輸出
nofound!
exampleinput 10
122 33 55 63 70 74 79 80 87 4
5510 2 87
exampleoutput 4
nofound!
nofound! 10
hint
author
#include#include#include#include#include#include#include#include#include#define max 20002
using namespace std;
typedef struct node
list;
int init(list *l)
void creat(list *l,int n)
l->length = n;
}void changelist(list *l,int m)
}void check(list*l,int s,int h,int m)
}void print(list*c)
printf("%d\n",c->elem[c->length]);
}int order(list*l,int n)
return -1;
}int main()
{ list l;
int x,n ,t;
cin>>n;
init(&l);
creat(&l,n);
cin>>t;
while(t--)
{x = order(&l,n);
if(x==-1)
cout<<"no found!"<
SDUTACM 順序表應用6 有序順序表查詢
problem description 順序表內按照由小到大的次序存放著n個互不相同的整數 1 n 20000 任意輸入乙個整數,判斷該整數在順序表中是否存在。如果在順序表中存在該整數,輸出其在表中的序號 否則輸出 no found input 第一行輸入整數n,表示順序表的元素個數 第二行依次輸入...
SDUTACM 順序表應用5 有序順序表歸併
problem description 已知順序表a與b是兩個有序的順序表,其中存放的資料元素皆為普通整型,將a與b表歸併為c表,要求c表包含了a b表裡所有元素,並且c表仍然保持有序。input 輸入分為三行 第一行輸入m n 1 m,n 10000 的值,即為表a b的元素個數 第二行輸入m個有...
順序表應用6 有序順序表查詢
time limit 7ms memory limit 700k 順序表內按照由小到大的次序存放著n個互不相同的整數 1 n 20000 任意輸入乙個整數,判斷該整數在順序表中是否存在。如果在順序表中存在該整數,輸出其在表中的序號 否則輸出 no found 第一行輸入整數n,表示順序表的元素個數 ...