Trồng cây (Đề tự luyện HSG Tin 9 #01 – Bài 1)
Xem dạng PDFĐộ khó: Dễ (1/4 điểm)
🎓 Khóa học Lập trình Thuật toán thi đấu của thầy Nguyễn Việt Nam Sơn – 111 buổi video, kèm cặp cá nhân, luyện thi chuyên Tin · HSG Tin học · Tin học trẻ · đội tuyển quốc gia · Olympic/ICPC. 👉 Xem chi tiết khóa học · Thành tích học viên
📞 Đăng ký học: Zalo 0767 666 702 · Facebook Nguyễn Việt Nam Sơn · 🌐 laptrinhthuattoan.blogspot.com
Thầy Sơn vừa mua về ~S~ cây giống và muốn trồng toàn bộ số cây này trong khu vườn sau nhà. Để dễ chăm sóc, thầy xếp cây thành một lưới hình chữ nhật gồm ~a~ hàng, mỗi hàng ~b~ cây (~a, b~ là các số nguyên dương, ~a \le b~ và ~a \times b = S~). Hai cách xếp được coi là khác nhau nếu cặp ~(a, b)~ khác nhau.
Sau khi trồng, thầy cần rào quanh khu vườn. Với cách xếp ~a~ hàng, ~b~ cột, chiều dài hàng rào cần dùng là ~2 \times (a + b)~ mét.
Thầy Sơn có ~T~ phương án mua cây khác nhau. Với mỗi phương án (mỗi giá trị ~S~), hãy giúp thầy tính:
- Có bao nhiêu cách xếp ~S~ cây thành lưới hình chữ nhật như trên.
- Chiều dài hàng rào ngắn nhất có thể (trong tất cả các cách xếp).
Dữ liệu vào
- Dòng đầu tiên chứa số nguyên ~T~ ~(1 \le T \le 10)~ — số phương án.
- ~T~ dòng tiếp theo, mỗi dòng chứa một số nguyên dương ~S~ ~(1 \le S \le 10^{12})~.
Kết quả
Gồm ~T~ dòng, dòng thứ ~i~ ghi hai số nguyên cách nhau một dấu cách: số cách xếp và chiều dài hàng rào ngắn nhất ứng với phương án thứ ~i~.
Giới hạn (Subtask)
- Subtask 1 (~40\%~ số điểm): ~S \le 10^6~.
- Subtask 2 (~60\%~ số điểm): không có ràng buộc gì thêm.
💡 Lưu ý khi nộp bằng Python: các em nên chọn ngôn ngữ PyPy 3 thay vì Python 3 để chương trình chạy nhanh hơn nhiều. Giới hạn thời gian cho Python/PyPy ở bài này là 3 giây.
Sample Input 1
3
12
7
36
Sample Output 1
3 14
1 16
5 24
Giải thích
- ~S = 12~: có ~3~ cách xếp là ~(1, 12), (2, 6), (3, 4)~; hàng rào ngắn nhất là ~2 \times (3 + 4) = 14~.
- ~S = 7~: chỉ có cách ~(1, 7)~, hàng rào dài ~16~.
- ~S = 36~: có ~5~ cách ~(1, 36), (2, 18), (3, 12), (4, 9), (6, 6)~; hàng rào ngắn nhất là ~2 \times (6 + 6) = 24~.
Nguồn: Đề tự luyện HSG Tin học lớp 9 (đề tự soạn).
Bình luận