Ví dụ Python thực chiến, bài toán các slot machines (phần 1)

Bài toán các slot machines

Có bao nhiêu lần các slot machines có thể chơi trước khi chúng ta hết tiền? Đây là một
vấn đề tinh vi cái không chỉ phụ thuộc vào số tiền bắt đầu của chúng ta mà còn vào mô hình
thắng khi chúng ta chơi. Chúng ta sẽ thấy rằng chúng ta cần một vòng lặp while, không
phải for loop cho tình huống này.
Bài toán
Martha đi tới một casino và đem lại n quarters. Casino có ba slot machines, và cô ta chơi
chúng trong thứ tự cô ta không còn quarters để lại. Đó là, cô ta chơi slot machine đầu tiên,
sau đó thứ hai, sau đó thứ ba, sau đó quay lại cái đầu tiên, sau đó cái thứ hai ..vv… Mỗi
lần chơi tốn một quarter.
Slot machine hoạt động theo quy tắc sau:
+ Slot machine đầu tiên trả 30 quarters mỗi 35 lần được chơi.
+ Slot machine thứ hai trả 60 quarters mỗi 100 lần nó được chơi.
+ Slot machine thứ ba trả 9 quarters mỗi 10 lần được chơi.
+ Các chơi khác không trả gì.
Quyết định số lần Martha chơi trước khi cô ta không còn quarters để lại.
Input
Đầu vào bao gồm 4 dòng:
+ Dòng đầu tiên chứa số nguyên n, số quarters cái Martha đem tới casino, n
giữa 1 và 1000.
+ Dòng thứ hai chứa một số nguyên chỉ số lần slot machine đầu tiên được chơi từ
khi nó trả lần cuối cùng. Các chơi này xảy ra trước khi Martha đi đến, và chơi
của Martha tiếp tục từ đó. Ví dụ, giả sử rằng slot machine đầu tiên đã được chơi
34 lần từ khi nó trả lần cuối. Thì, Martha sẽ thắng 30 quarters lần đầu tiên cô ta
chơi nó.
+ Dòng thứ ba chứa một số nguyên chỉ số lần slot machine thứ hai được chơi từ khi
nó trả lần cuối cùng.
+ Dòng thứ tư chứa một số nguyên chỉ số lần slot machine thứ ba được chơi từ khi
nó trả lần cuối.
Output
Cho ra dòng sau, nơi x là số lần Martha chơi trước khi cô ta không còn quarters để lại.

Martha plays x times before going broke.

Chia sẻ

Leave a Reply

Your email address will not be published. Required fields are marked *