用python语言编辑过河游戏
时间: 2023-12-25 21:49:38 浏览: 46
以下是一个简单的Python代码实现河游戏:
```python
def cross_river(positions):
left_bank = [1, 1, 1, 1]
right_bank = [0, 0, 0, 0]
boat = 0 # 0代表船在左岸,1代表船在右岸
for p in positions:
if p == 'C':
if boat == 0 and left_bank.count(1) >= 2:
left_bank[left_bank.index(1)] = 0
left_bank[left_bank.index(1)] = 0
right_bank[right_bank.index(0)] = 1
right_bank[right_bank.index(0)] = 1
elif boat == 1 and right_bank.count(1) >= 2:
right_bank[right_bank.index(1)] = 0
right_bank[right_bank.index(1)] = 0
left_bank[left_bank.index(0)] = 1
left_bank[left_bank.index(0)] = 1
else:
return "无法通过"
elif p == 'W':
if boat == 0 and left_bank.count(1) >= 1:
left_bank[left_bank.index(1)] = 0
right_bank[right_bank.index(0)] = 1
elif boat == 1 and right_bank.count(1) >= 1:
right_bank[right_bank.index(1)] = 0
left_bank[left_bank.index(0)] = 1
else:
return "无法通过"
boat = 1 - boat
return "通过了"
# 测试
print(cross_river(['C', 'W', 'C']))
```
运行结果为:
```
通过了
```
以上代码实现了一个简单的河游戏,其中C表示狼,W表示羊,1表示它们在左岸,0表示它们在右岸,船的位置用变量boat表示。代码中用列表left_bank和right_bank表示左岸和右岸的状态,用boat变量表示船的位置。函数接受一个列表作为参数,列表中的元素表示河的对岸要过来的物品,如果能够按照要求通过河就返回"通过了",否则返回"无法通过"。