Phần tử ở giữa

Xem dưới dạng PDF

Gửi bài giải


Điểm: 30
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
đầu vào: stdin
Đầu ra: stdout

Kiểu bài tập

Cho một danh sách liên kết đơn gồm N phần tử. Hãy tìm giá trị của phần tử ở giữa danh sách.

  • Nếu N lẻ: phần tử chính giữa (vị trí N/2 + 1, đánh số từ 1).
  • Nếu N chẵn: phần tử thứ N/2 (phần tử giữa thứ nhất trong hai phần tử giữa).

Sử dụng kỹ thuật hai con trỏ (slow/fast pointer) — một con trỏ chạy nhanh gấp đôi con trỏ kia.

Đầu vào
  • Dòng đầu tiên chứa số nguyên N (\(1 \le N \le 1000\)).
  • Dòng thứ hai chứa N số nguyên \(A_i\) (\(1 \le A_i \le 10^9\)).
Đầu ra

In ra giá trị của phần tử ở giữa danh sách.

Ví dụ
Input:
5
10 20 30 40 50

Output:
30

Ràng buộc & Subtasks

Subtask Điểm Ràng buộc
1 30% Tương ứng với các bộ test có kích thước nhỏ
2 70% Không có ràng buộc gì thêm ngoài định dạng đầu vào

Nhận xét

Không có ý kiến tại thời điểm này.