#5404. Where is the Marble? (Mã bài: MARBLE)

Bộ nhớ: 256 MiB Thời gian: 1000 ms Nhập/xuất từ luồng chuẩn
Kiểu bài: Thông thường Kiểu chấm: So sánh văn bản
Đưa lên bởi: Trùm CUỐI

Đề bài

An có N viên bi, mỗi viên có một số được viết trên đó. Bình có Q câu hỏi, mỗi câu hỏi là một số x . Với mỗi câu hỏi, An cần trả lời xem viên bi có số x có tồn tại không. Nếu có, An phải cho biết vị trí xuất hiện đầu tiên của viên bi đó trong danh sách các viên bi đã được sắp xếp tăng dần.

Dữ liệu:

  • Gồm nhiều bộ test, mỗi bộ test có dạng:
    • Dòng đầu tiên chứa hai số nguyên N Q .
    • Dòng thứ hai chứa N số nguyên là các số trên viên bi của An.
    • Q dòng tiếp theo, mỗi dòng chứa một số nguyên x là một câu hỏi của Bình.
  • Dữ liệu kết thúc khi N = 0 Q = 0 .

Kết quả:

  • Với mỗi bộ test, in ra "CASE# t:" với t là số thứ tự bộ test.
  • Với mỗi câu hỏi x :
    • Nếu tìm thấy, in ra " x found at p ", trong đó p là vị trí (đếm từ 1) của lần xuất hiện đầu tiên của x trong mảng đã sắp xếp.
    • Nếu không tìm thấy, in ra " x not found".

Ví dụ:

Dữ liệu:

4 1
2 3 5 1
5
5 2
1 3 3 3 1
2
3
0 0

Kết quả:

CASE# 1:
5 found at 4
CASE# 2:
2 not found
3 found at 3

Giải thích:

  • Case 1: Mảng bi là [2, 3, 5, 1]. Sắp xếp lại thành [1, 2, 3, 5]. Số 5 được tìm thấy ở vị trí thứ 4.
  • Case 2: Mảng bi là [1, 3, 3, 3, 1]. Sắp xếp lại thành [1, 1, 3, 3, 3]. Số 2 không có. Số 3 xuất hiện lần đầu ở vị trí thứ 3.

Giới hạn:

  • 1 \le N, Q \le 10000
  • Các số trên bi và các câu hỏi là số nguyên không âm.