挺简单的一道题,直接AC
用的是insert sorting方法,效率并不高,用时比较长
#include<iostream>
#include<cstring>
void sorting(int* in, int N);
using namespace std;
const int maxn = 10004;
int in[maxn], fi[maxn];
int main()
{
int N, Q;
int count = 1;
while (cin >> N >> Q&&N != 0)
{
memset(in, 0, sizeof(in));
memset(fi, 0, sizeof(fi));
for (int i = 0; i < N; i++)
cin >> in[i];
for (int i = 0; i < Q; i++)
cin >> fi[i];
sorting(in, N);
/*for (int i = 0; i < N; i++)
cout << in[i];*/
cout << "CASE# " << count << ':' << endl;
for (int i = 0; i < Q; i++)
{
int ans = 0;
int j = 0;
for (; j < N; j++)
if (fi[i] == in[j])
{
ans = 1;
break;
}
if (ans == 0)cout << fi[i] << " not found" << endl;
else cout << fi[i] << " found at " << j + 1 << endl;
}
count++;
}
}
void sorting(int* in, int N)
{
int key = in[1];
for (int i = 1; i < N; i++)
{
int j = i-1;
while (key <= in[j] && j >= 0)
{
in[j + 1] = in[j];
j--;
}
in[j+1] = key;
key = in[i+1];
}
}