def findMinAndMax(L):
if L==[]:
return (None,None)
else:
minL=L[0]
maxL=L[0]
for value in L:
if minL>=value:
minL=value
if maxL<=value:
maxL=value
return (minL,maxL)
# 测试
if findMinAndMax([]) != (None, None):
print('测试失败!')
elif findMinAndMax([7]) != (7, 7):
print('测试失败!')
elif findMinAndMax([7, 1]) != (1, 7):
print('测试失败!')
elif findMinAndMax([7, 1, 3, 9, 5]) != (1, 9):
print('测试失败!')
else:
print('测试成功!')
ZGVmIGZpbmRNaW5BbmRNYXgoTCk6CiAgICBpZiBMPT1bXToKICAgICAgICByZXR1cm4gKE5vbmUsTm9uZSkKICAgIGVsc2U6CiAgICAgICAgbWluTD1MWzBdCiAgICAgICAgbWF4TD1MWzBdCiAgICAgICAgZm9yIHZhbHVlIGluIEw6CiAgICAgICAgICAgIGlmIG1pbkw+PXZhbHVlOgogICAgICAgICAgICAgICAgbWluTD12YWx1ZQogICAgICAgICAgICBpZiBtYXhMPD12YWx1ZToKICAgICAgICAgICAgICAgIG1heEw9dmFsdWUKICAgICAgICByZXR1cm4gKG1pbkwsbWF4TCkKCgoKCgojIOa1i+ivlQppZiBmaW5kTWluQW5kTWF4KFtdKSAhPSAoTm9uZSwgTm9uZSk6CiAgICBwcmludCgn5rWL6K+V5aSx6LSlIScpCmVsaWYgZmluZE1pbkFuZE1heChbN10pICE9ICg3LCA3KToKICAgIHByaW50KCfmtYvor5XlpLHotKUhJykKZWxpZiBmaW5kTWluQW5kTWF4KFs3LCAxXSkgIT0gKDEsIDcpOgogICAgcHJpbnQoJ+a1i+ivleWksei0pSEnKQplbGlmIGZpbmRNaW5BbmRNYXgoWzcsIDEsIDMsIDksIDVdKSAhPSAoMSwgOSk6CiAgICBwcmludCgn5rWL6K+V5aSx6LSlIScpCmVsc2U6CiAgICBwcmludCgn5rWL6K+V5oiQ5YqfIScp