Средне Решено: 0 Процент решений: 0%

Empty Two Coin Piles

Decide whether paired removals can empty two piles.

Чему вы научитесь

  • Turn a process into equations
  • Check divisibility and balance conditions
  • Answer in constant time

Условие

Показать перевод

Each 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.

Ограничения

0 ≤ left, right ≤ 1,000,000,000. Two empty piles are already a successful result.

Примеры

Пример 1
Ввод:
left = 4
right = 2

Ожидаемый вывод:
expected = True
Ввод:
long long left = 4;
long long right = 2;

Ожидаемый вывод:
bool expected = true;
Ввод:
long left = 4;
long right = 2;

Ожидаемый вывод:
bool expected = true;

Пояснение

Remove (2, 1) twice: (4, 2) → (2, 1) → (0, 0).

Пример 2
Ввод:
left = 4
right = 1

Ожидаемый вывод:
expected = False
Ввод:
long long left = 4;
long long right = 1;

Ожидаемый вывод:
bool expected = false;
Ввод:
long left = 4;
long right = 1;

Ожидаемый вывод:
bool expected = false;

Пояснение

The only possible first move leaves (2, 0), after which no move can empty the left pile.

Как подступиться

Сначала попробуйте сами, затем открывайте подсказки по одной.

Подсказка 1

Each move removes exactly three coins total, so the overall coin count must fit that pattern.

Подсказка 2

Neither pile can be reduced below zero, so one pile cannot exceed what the other can support.

Подсказка 3

Check both the total amount and the difference between piles.

Ожидаемая сложность

O(1) time, O(1) extra space

Ссылки

Это задание адаптировано для CodeUtility. Следуйте условию и ограничениям выше.

Учитесь у других

Решения сообщества

Пока нет опубликованных решений. Решите задание, чтобы поделиться первым.