Bác nông dân giấu cỏ

Đề bài

Mô tả

Một bác nông dân cất trữ các khối cỏ khô lập phương 1×1×1 trong kho dưới dạng một hình hộp chữ nhật có kích thước A×B×C, gồm A tầng, mỗi tầng có B hàng và mỗi hàng có C khối.

Một nhóm trộm đã lấy đi một lớp khối ở mặt trên, mặt dưới (tính theo các mặt bên), trước, sau và hai bên hông của khối hộp. Kết quả là phần còn lại có dạng một hình hộp chữ nhật kích thước (A1)×(B2)×(C2) khối cỏ khô.

Sau vụ trộm, bác nông dân đếm được đúng n khối cỏ khô còn lại trong kho, nhưng không nhớ các giá trị A, B, C ban đầu. Cho trước n, hãy xác định số khối cỏ khô ít nhấtnhiều nhất có thể đã bị lấy đi.

Số khối bị lấy bằng A·B·Cn, xét trên mọi bộ (A,B,C) nguyên dương thỏa A1, B2, C2(A1)(B2)(C2)=n.

Dữ liệu vào

Một dòng duy nhất chứa số nguyên n.

Dữ liệu ra

In ra hai số nguyên cách nhau bởi dấu cách: số khối bị lấy ít nhất và nhiều nhất có thể.

Ràng buộc

  • 1n109
  • Kết quả có thể vượt phạm vi 32-bit; dùng kiểu nguyên 64-bit.

Ví dụ

Input Output Giải thích
4 28 41 Với (A,B,C)=(2,4,4), còn lại 1·2·2=4 khối, mất 324=28. Với (A,B,C)=(5,3,3), còn lại 4·1·1=4 khối, mất 454=41.
7 47 65 Phân tích 7=1·1·7 cho ba hoán vị, kết quả nhỏ nhất là 47 và lớn nhất là 65.
12 48 105 Cách bố trí cho ít khối mất nhất là (A,B,C)=(4,4,4), còn lại 3·2·2=12 khối, mất 6412=48.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0