Tìm vị trí xuất hiện đầu tiên của một giá trị
Dãy điểm kiểm tra được lưu theo đúng thứ tự chỗ ngồi trong lớp, nên dãy không được sắp
Tiến độ của tôi ở bài này
Điểm và code bạn nộp được lưu vào tài khoản sau khi chấm bài.
Đang tải điểm của bạn…
Kiến thức và chủ đề
Kiến thức tiên quyết: cpp-basics, arrays.
Nội dung đề bài
Mô tả bài toán
Dãy điểm kiểm tra được lưu theo đúng thứ tự chỗ ngồi trong lớp, nên dãy không được sắp xếp. Khi cần biết bạn đầu tiên đạt đúng một mức điểm nào đó, ta phải đi từ đầu dãy và dừng lại ngay ở lần gặp đầu tiên chứ không thể nhảy cóc.
Yêu cầu
Cho n số nguyên và một giá trị x. Hãy in ra vị trí (đếm từ 1) của phần tử đầu tiên bằng x trong dãy. Nếu dãy không có phần tử nào bằng x, in ra -1.
Quy ước nộp bài
Nộp chương trình solution.cpp đọc dữ liệu từ stdin đúng theo định dạng trên và in kết quả ra stdout. Chỉ in một số nguyên, vị trí đếm từ 1.
Input
- Dòng 1: số nguyên n (1 <= n <= 30).
- Dòng 2: n số nguyên a1 a2 ... an (-10000 <= ai <= 10000).
- Dòng 3: số nguyên x (-10000 <= x <= 10000).
Output
Một số nguyên duy nhất: vị trí đầu tiên tính từ 1 của x trong dãy, hoặc -1 nếu x không xuất hiện trong dãy.
Ràng buộc
- Dãy không được sắp xếp sẵn, nên không được dùng tìm kiếm nhị phân.
- Mỗi bộ dữ liệu chạy trong 1 giây, bộ nhớ không đáng kể.
- Không cần in dấu cách hay dòng trống thừa.
Ví dụ 1
Input
5
1 3 5 7 9
5
Output
3
Ví dụ 2
Input
4
2 4 4 4
4
Output
2
Giải thích
Dữ liệu vào:
Giá trị 5 nằm ở vị trí thứ 3 tính từ đầu dãy, nên kết quả in ra là 3.
Gợi ý và lời giải chỉ mở sau khi bạn bấm Nộp bài. Giáo viên và quản trị viên mở được ngay.
Góp ý & báo lỗi bài tập
Đề bài chưa rõ, test có vấn đề hay bạn có ý tưởng giúp bài tốt hơn? Gửi cho đội ngũ AI Empire nhé — mỗi góp ý đều được đọc.
