📜  Python|神奇宝贝训练游戏

📅  最后修改于: 2022-05-13 01:54:59.456000             🧑  作者: Mango

Python|神奇宝贝训练游戏

问题 :
你是一名神奇宝贝训练师。每个神奇宝贝都有自己的力量,用正整数值描述。旅行时,您会观看神奇宝贝并抓住它们。每次捕获后,您必须显示到目前为止捕获的神奇宝贝的最大和最小力量。您必须具有线性时间复杂度。所以排序在这里没有帮助。尝试具有最小的额外空间复杂度。

例子:

假设你捕捉到力量为 3 8 9 7 的神奇宝贝。那么输出应该是
3 3
3 8
3 9
3 9

Input : 
The single line describing powers of N Pokémon caught. 

Output : 
N lines stating minimum power so far and maximum power
so far separated by single space

代码:实现口袋妖怪训练游戏的Python代码

# python code to train pokemon
powers = [3, 8, 9, 7]
   
mini, maxi = 0, 0
   
for power in powers:
    if mini == 0 and maxi == 0:
        mini, maxi = powers[0], powers[0]
        print(mini, maxi)
    else:
        mini = min(mini, power)
        maxi = max(maxi, power)
        print(mini, maxi)
        
# Time Complexity is O(N) with Space Complexity O(1)

输出 :

3 3
3 8
3 9
3 9