HỌC MÁY

Informath là một sản phẩm robot của câu lạc bộ LQĐ IT. Tập tin dữ liệu huấn luyện cho robot có kích thước không quá \(10^{9}\) byte. Trong quá trình huấn luyện, Robot đọc mỗi lần \(a^{b}\) byte dữ liệu (\(a,b\) là các số nguyên dương nào đó và \(b \geq 2\)) với thời gian đọc \(b\) giây.robot-library-illustration-evening-ai-generated_843560-1446

Cụ thể, với tập tin kích thước \(n\), robot đọc \(a_{1}^{b_{1}}\left( a_{1}^{b_{1}} \leq n \right)\) byte và tốn \(b_{1}\) giây. Nếu \(n - a_{1}^{b_{1}} > 0\), robot đọc tiếp \(a_{2}^{b_{2}}\) byte và tốn \(b_{2}\) giây, cứ như thế robot đọc hết tập tin sau \(k\) lần. Như vậy, ta có: \({n = a}_{1}^{b_{1}} + a_{2}^{b_{2}} + \ldots + a_{k}^{b_{k}}\) và thời gian đọc là \(b_{1} + b_{2} + \ldots + b_{k}\).

Kiến thức bổ túc:

  • Các số tự nhiên luôn có thể biểu diễn thành tổng của không quá \(4\) số chính phương (số chính phương là bình phương của một số tự nhiên). Ngoại lệ, các số có dạng \(4^{k}*(8*m + 7)\) thì không thể biểu diễn thành tổng của ít hơn \(4\) số chính phương (\(k,m\) là số tự nhiên)”.

Ví dụ:

  • \(30 = 5^{2} + 2^{2} + 1^{2},4 = 2^{2},2024 = 42^{2} + 16^{2} + 2^{2}\);

  • \(60 = 4^{1}*(8*1 + 7)\) có dạng \(4^{k}*(8*m + 7)\) nên được biểu diễn từ \(4\) số chính phương trở lên: \(60 = 6^{2} + 4^{2} + 2^{2} + 2^{2}\).

Yêu cầu: Cho số nguyên \(n\). Tính thời gian tối thiểu để robot đọc hết tập tin kích thước \(n\).

Dữ liệu:

  • Dòng đầu chứa số nguyên \(T(1 \leq T \leq 5)\) – số tập tin dữ liệu huấn luyện;

  • \(T\) dòng tiếp theo, mỗi dòng chứa một số nguyên \(n\left( 1 \leq n \leq 10^{9} \right)\) – kích thước tập tin.

Kết quả:

- Gồm \(T\) dòng, mỗi dòng là thời gian ít nhất để đọc tập tin có kích thước tương ứng trong file dữ liệu.

Ví dụ:

Input Output Giải thích
1
100000000
2 \[100000000 = 10000^{2}(a = 10000,b = 2)\]
3
27
128
33
3
4
5
  • \(27 = 3^{3}(a = 3,b = 3)\)
  • \(128 = 8^{2} + 8^{2}\left( a_{1} = 8,b_{1} = 2;a_{2} = 8,b_{2} = 2 \right)\)
  • \(33 = 5^{2} + 2^{3}\left( a_{1} = 5,b_{1} = 2;a_{2} = 2,b_{2} = 3 \right)\)

Ràng buộc: gọi \(N\) là tổng kích thước của \(T\) tập tin

  • Có 20% số test thỏa \(T\) tập tin đều có kích thước không vượt quá \(2^{8}\);

  • Có 40% số test thỏa: \(2^{8} < N \leq 2^{16}\);

  • Có 40% số test thỏa: \(2^{16} < N \leq 10^{9}\).

Bạn cần đăng nhập để nộp bài

hpcode.edu.vn
Code tích cực
Trong 24h
  1. npk1605 (5/10)
  2. tuythoi213 (4/6)
  3. bao_khanh (2/3)
Trong 7 ngày
  1. nguyenanhvu (40/64)
  2. khieuquan (35/59)
  3. ngokhang (27/55)
Trong 30 ngày
  1. quechi (85/105)
  2. dangphong3108 (79/125)
  3. kiennhientv (79/179)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 38905

Lưu Hải Phong - 2020
[email protected]