#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