Đề bài
Xem bản dịchEach move removes two coins from one pile and one coin from the other. Either orientation is allowed. You may never remove more coins than remain. Determine whether both piles can end at zero.
Implement coin_piles(left, right).
Input
left: The number of coins in the left pile.
right: The number of coins in the right pile.
Output
Return true if the piles can both be emptied; otherwise return false.
Ràng buộc
0 ≤ left, right ≤ 1,000,000,000. Two empty piles are already a successful result.
Ví dụ
Đầu vào:
left = 4
right = 2
Kết quả mong đợi:
expected = True
Đầu vào:
long long left = 4;
long long right = 2;
Kết quả mong đợi:
bool expected = true;
Đầu vào:
long left = 4;
long right = 2;
Kết quả mong đợi:
bool expected = true;
Giải thích
Remove (2, 1) twice: (4, 2) → (2, 1) → (0, 0).
Đầu vào:
left = 4
right = 1
Kết quả mong đợi:
expected = False
Đầu vào:
long long left = 4;
long long right = 1;
Kết quả mong đợi:
bool expected = false;
Đầu vào:
long left = 4;
long right = 1;
Kết quả mong đợi:
bool expected = false;
Giải thích
The only possible first move leaves (2, 0), after which no move can empty the left pile.
Tham khảo
Thử thách này đã được điều chỉnh cho CodeUtility. Hãy làm theo đề bài và các ràng buộc ở trên.