TS10 Điện Biên 2026 - Quản lý nông trại

Xem PDF



Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 800 Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Một nông trại thông minh sử dụng robot tự động để quản lý số lượng nông
sản trong kho dữ liệu. Ban đầu, trong kho đang lưu trữ \(n\) quả cam. Mỗi
ngày, robot sẽ kiểm tra số lượng cam hiện tại có trong kho và tự động
thực hiện một trong hai hành động sau:

  • Nếu số cam trong kho là một số chẵn, robot sẽ tiến hành đóng gói và xuất đi một nửa số cam đó (số cam còn lại trong kho giảm đi một nửa).
  • Nếu số cam trong kho là một số lẻ, robot sẽ thu hoạch thêm từ vườn và bổ sung vào kho đúng \(3\) quả cam nữa.

Quy trình kiểm tra và thay đổi số lượng cam này sẽ lặp đi lặp lại liên
tục cho đến khi số lượng cam trong kho bằng \(1\) thì robot sẽ dừng lại và
khóa kho.

Yêu cầu:

  • Gọi \(S\) là số lần robot thực hiện thay đổi số lượng cam trong kho.
  • Gọi \(M\) là số lượng cam nhiều nhất từng xuất hiện trong kho trong suốt quy trình xử lý trên, tính cả số lượng cam \(n\) ban đầu.

Để hoàn thành ca làm việc, robot cần lập một Mã nhật ký vận hành dưới
dạng một số nguyên duy nhất để gửi về trung tâm. Mã nhật ký này được tạo
ra bằng cách viết ghép liền giá trị của số \(M\) ngay sau giá trị của số
\(S\). Bạn hãy lập trình giúp robot tính và in ra Mã nhật ký vận hành này.

Dữ liệu vào

Một dòng duy nhất chứa số nguyên dương \(n\) (\(n \le 10^6\)).

Dữ liệu ra

In ra một số nguyên duy nhất là Mã nhật ký vận hành tìm được.

Phân nhóm

Subtasks Điểm Ràng buộc
1 \(80\%\) \(n \le 10^4\)
2 \(20\%\) \(n \le 10^6\)

Ví dụ

Ví dụ 1

Input
5
Output
48
Note

Quá trình biến đổi:

  • Ban đầu: \(5\) (lẻ) \(\rightarrow 8\) (\(S = 1, M = 8\))
  • \(8 \rightarrow 4\) (\(S = 2, M = 8\))
  • \(4 \rightarrow 2\) (\(S = 3, M = 8\))
  • \(2 \rightarrow 1\) (\(S = 4, M = 8\), dừng)

\(\rightarrow S = 4\) \(\rightarrow M = 8\) \(\rightarrow\) Mã nhật ký:
48

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.