#S0016. 生命值状态更新
生命值状态更新
1. 问题描述
🎮 游戏中的状态同步
在多人在线游戏中(比如《我的世界》或《Roblox》),服务器需要实时处理玩家的状态变化。例如:
- 当玩家捡到「生命药水」时,生命值增加
- 被怪物攻击时,生命值减少
- 生命值不能超过最大值100,也不能小于0
🛠️ 任务
实现一个玩家生命值更新程序。程序持续接收事件输入,直到输入 end 时停止,最后输出玩家最终生命值。
事件格式:
heal 数值恢复生命值(如heal 20)hurt 数值减少生命值(如hurt 30)
2. 输入和输出
输入方式:
- 多行输入,每行为
heal 数字或hurt 数字 - 最后一行输入
end表示结束
输出方式:
- 最终生命值(范围必须在 0-100 之间)
示例
# 输入:
heal 120
hurt 50
hurt 30
end
# 计算过程:
100 (超过最大值取100) → 50 → 20
# 输出: 20
# 输入:
hurt 15
heal 10
end
# 计算过程:
-15 → -5 (最低取0)
# 输出: 0