100375. 求出硬币游戏的赢家
给你两个 正 整数 x
和 y
,分别表示价值为 75 和 10 的硬币的数目。
Alice 和 Bob 正在玩一个游戏。每一轮中,Alice 先进行操作,Bob 后操作。每次操作中,玩家需要拿出价值 总和 为 115 的硬币。如果一名玩家无法执行此操作,那么这名玩家 输掉 游戏。
两名玩家都采取 最优 策略,请你返回游戏的赢家。
示例 1:
输入:x = 2, y = 7
输出:"Alice"
解释:
游戏一次操作后结束:
示例 2:
输入:x = 4, y = 11
输出:"Bob"
解释:
游戏 2 次操作后结束:
提示:
1 <= x, y <= 100
原站题解
php 解法, 执行用时: 0 ms, 内存消耗: 20 MB, 提交时间: 2024-11-05 10:13:35
class Solution { /** * @param Integer $x * @param Integer $y * @return String */ function losingPlayer($x, $y) { return min($x, intval($y/4)) % 2 == 1? "Alice": "Bob"; } }
rust 解法, 执行用时: 2 ms, 内存消耗: 2.1 MB, 提交时间: 2024-07-22 22:55:02
impl Solution { pub fn losing_player(x: i32, y: i32) -> String { let min_val = std::cmp::min(x, y / 4); if min_val % 2 == 0 { "Bob".to_string() } else { "Alice".to_string() } } }
javascript 解法, 执行用时: 83 ms, 内存消耗: 49.7 MB, 提交时间: 2024-07-22 22:49:46
/** * @param {number} x * @param {number} y * @return {string} */ var losingPlayer = function(x, y) { return Math.min(x, Math.floor(y / 4)) % 2 === 0 ? "Bob" : "Alice"; };
golang 解法, 执行用时: 0 ms, 内存消耗: 2.3 MB, 提交时间: 2024-07-22 22:46:40
func losingPlayer(x, y int) string { return [2]string{"Bob", "Alice"}[min(x, y/4)%2] }
cpp 解法, 执行用时: 0 ms, 内存消耗: 7.5 MB, 提交时间: 2024-07-22 22:46:23
class Solution { public: string losingPlayer(int x, int y) { return min(x, y / 4) % 2 ? "Alice" : "Bob"; } };
java 解法, 执行用时: 0 ms, 内存消耗: 40.7 MB, 提交时间: 2024-07-22 22:46:09
class Solution { public String losingPlayer(int x, int y) { return Math.min(x, y / 4) % 2 == 0 ? "Bob" : "Alice"; } }
python3 解法, 执行用时: 37 ms, 内存消耗: 16.5 MB, 提交时间: 2024-07-22 22:45:55
class Solution: # 10 * 4 + 75 * 1 def losingPlayer(self, x: int, y: int) -> str: return "Alice" if min(x, y // 4) % 2 else "Bob"