Số họcƯớc/Bội chung
Mô tả
Hệ thống truyền tải A Lưới trải dài qua nhiều tỉnh thành, quản lý một cụm trạm biến áp cần bảo trì định kỳ. Mỗi luồng trạm có một chu kỳ bảo dưỡng riêng (tính bằng ngày) để kỹ sư đi kiểm tra. Khi chu kỳ đến, luồng trạm đó tạm ngừng vận hành. Ban điều hành muốn tìm một chu kỳ bảo dưỡng chung tối ưu: khoảng thời gian lớn nhất (cũng tính bằng ngày) mà tại điểm đó, tất cả các luồng trạm đều đồng loạt dừng để tiến hành bảo dưỡng tổng thể. Nhiệm vụ của bạn là tính toán chu kỳ này dựa trên danh sách chu kỳ của từng luồng.
Đầu vào
- Một mảng số nguyên
cycles(kiểu danh sách trong Python), trong đócycles[i]là chu kỳ bảo dưỡng của luồng trạm thứi.
Đầu ra
- Trả về một số nguyên dương duy nhất là chu kỳ bảo dưỡng chung lớn nhất của toàn bộ các luồng trạm.
Ràng buộc
1 ≤ n ≤ 10^5(số lượng phần tử của mảng).1 ≤ cycles[i] ≤ 10^9.- Mảng luôn có ít nhất một phần tử khác 0.
Ví dụ
Ví dụ 1:
- Đầu vào:
[12, 18, 24] - Đầu ra:
6 - Giải thích: Luồng 1 dừng vào ngày 12, 24, 36...; luồng 2 dừng vào ngày 18, 36, 54...; luồng 3 dừng vào ngày 24, 48, 72... Ngày gần nhất cả ba luồng cùng dừng là ngày thứ 36. Chu kỳ chung lớn nhất là Ước chung lớn nhất của 12, 18 và 24, tức là 6 (vì 36 = 6 * 6).