trang chủ / bài tập / bearcubes

Tháp khối lập phương của Limak

Đề bài

Mô tả

Limak xây tháp bằng các khối lập phương. Mỗi khối là một hình lập phương có cạnh là số nguyên dương; Limak có vô hạn khối với mỗi độ dài cạnh. Một khối có cạnh a có thể tích a3. Tháp gồm các khối cạnh a1,a2,,ak có tổng thể tích là a13+a23++ak3.

Limak xây tháp như sau: cho trước số nguyên dương X là tổng thể tích yêu cầu, Limak thêm dần các khối theo cách tham lam — mỗi lần chọn khối lớn nhất có thể tích không vượt quá phần thể tích còn lại.

Bạn được cho số nguyên m. Hãy chọn X thỏa mãn 1Xm sao cho:

  1. Số khối trong tháp cuối cùng là lớn nhất có thể.
  2. Trong các giá trị X đạt được số khối lớn nhất, chọn X lớn nhất.

In ra số khối lớn nhất và giá trị X tương ứng.

Dữ liệu vào

Một dòng duy nhất chứa số nguyên m (1m1015).

Dữ liệu ra

Một dòng gồm hai số nguyên: số khối lớn nhất trong tháp, và giá trị X tối đa cho ra số khối đó.

Ràng buộc

  • 1m1015

Ví dụ

Input Output Giải thích
48 9 42 Chọn X=42. Lần lượt: khối cạnh 3 (thể tích 27, còn 15); khối cạnh 2 (thể tích 8, còn 7); rồi 7 khối cạnh 1. Tổng cộng 9 khối. X=23 cũng cho 9 khối, nhưng 42 lớn hơn.
6 6 6 Với X=6: lấy 6 khối cạnh 1, được 6 khối.
1 1 1 Chỉ chọn được X=1, một khối duy nhất cạnh 1.

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