Hướng dẫn cho Ami Nhảy Bước


Chỉ sử dụng khi thực sự cần thiết như một cách tôn trọng tác giả và người viết hướng dẫn này.

Chép code từ bài hướng dẫn để nộp bài là hành vi có thể dẫn đến khóa tài khoản.

Authors: ami

ami sẽ nhảy tới một vài bước và nhảy lùi một vài bước. Giả sử ở lần nhảy \(n\), ami đến được ô \(i\)\(t\) là tổng số ô nhảy lùi, ta có công thức như sau:

\(\frac{n*(n+1)}{2} - 2*t = i\)

Từ đó, ta có:

\(t = \frac{\frac{n*(n+1)}{2} - ?i}{2}\).

Nhận xét rằng với \(n\) tăng thì \(t\) tăng, vậy ta có thể dùng duyệt nhị phân để tìm kiếm \(n\) nhỏ nhất thoả mãn điều kiện.

Độ phức tạp là \(O(log(i))\) mỗi query.



Bình luận

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