USACO 2017 - The Lost Cow

Xem PDF



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, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 800 (p) Thời gian: 4.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Farmer John đã làm lạc mất cô bò Bessie quý giá và ông cần tìm cô!

May mắn thay, chỉ có một con đường dài chạy ngang qua trang trại, và Farmer John biết rằng Bessie phải đang ở một vị trí nào đó trên con đường này. Nếu coi con đường như một trục số, Farmer John hiện đang ở vị trí \(x\) còn Bessie đang ở vị trí \(y\) (Farmer John không biết vị trí này). Nếu biết Bessie ở đâu, Farmer John có thể đi thẳng đến chỗ cô với quãng đường \(|x-y|\). Tiếc rằng bên ngoài trời tối và Farmer John không thể nhìn thấy gì. Cách duy nhất để tìm Bessie là đi tới đi lui cho đến khi ông tới được vị trí của cô.

Trong lúc tìm chiến lược tốt nhất để đi tới đi lui, Farmer John tham khảo các công trình nghiên cứu khoa học máy tính và khá thích thú khi phát hiện rằng bài toán chính xác này không những đã được các nhà khoa học máy tính nghiên cứu trước đây mà thực sự còn được gọi là "Bài toán chú bò đi lạc" (điều này hoàn toàn có thật!).

Phương án được khuyến nghị để Farmer John tìm Bessie là di chuyển đến vị trí \(x+1\), sau đó đổi hướng và di chuyển đến vị trí \(x-2\), rồi đến vị trí \(x+4\), và cứ tiếp tục như vậy theo hình "zích zắc", trong đó sau mỗi bước, khoảng cách đến vị trí xuất phát ban đầu lại gấp đôi lần trước. Qua việc nghiên cứu các thuật toán giải bài toán chú bò đi lạc, ông biết rằng cách này đảm bảo trong trường hợp xấu nhất, trước khi tìm thấy Bessie, ông sẽ đi không quá \(9\) lần khoảng cách trực tiếp \(|x-y|\) giữa hai người (điều này cũng đúng, và hệ số \(9\) thực sự là bảo đảm trường hợp xấu nhất nhỏ nhất mà một chiến lược bất kỳ có thể đạt được).

Farmer John muốn kiểm chứng kết quả này. Cho \(x\)\(y\), hãy tính tổng quãng đường ông sẽ đi theo chiến lược tìm kiếm zích zắc nêu trên cho đến khi tìm thấy Bessie.

Dữ liệu vào

Dòng duy nhất chứa hai số nguyên phân biệt \(x\)\(y\), cách nhau bởi dấu cách. Cả hai đều nằm trong khoảng \(0 \ldots 1\,000\).

Dữ liệu ra

In một dòng chứa quãng đường Farmer John sẽ đi để đến chỗ Bessie.

Ví dụ

Ví dụ 1

Input
3 6
Output
9

Nguồn

USACO 2017 US Open Contest, Bronze — The Lost Cow. Tác giả đề: Brian Dean.

https://usaco.org/index.php?page=viewproblem2&cpid=735

Bình luận

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

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

Kỳ thi: