- “((5+(2x(3-(1+(2x4))))))” 通过用户输入字符串,求出最里面括号的值
代码:def parench(data):
"""算括号"""
if "(" in data:
while 1:
if ")" in data:
b = data.index(")")
for i in range(b, -1, -1):
if data[i] == "(":
new_list = []
new_list = data[i+1:b]
"""通过四则函数求值"""
byte = compute(new_list)[0]
del(data[i:b+1])
data.insert(i,byte)
break
else:
return compute(data)
else:
compute(data)
while 1:
data = input("请输入算数:")
if data == "": continue
data = change_list(data)
parench(data)
print(data[0])
if input("如果输入q则退出:\n") == "q":
exit()
- 一群人晚上过桥,每次只能过2个人,并且需要一盏灯。每个人过桥时间不同。甲乙丙丁独自过桥分别耗时1,3,5,7分钟,灯只有一盏,计算最短时间。
1,3过去,1回来,耗时4分钟
5,7过去,3回来,耗时10分钟
1,3过去,耗时3分钟,功耗时17分钟 - n*m维数组,每一行,每一列都递增,请编写代码找出某元素
def ArraySearch(array,num):
if len(array) and len(array[0]):
row = 0
col = len(array[0])
while row != len(array) and col != -1:
if array[row][col] > num:
col -= 1
elif array[row][col] < num:
row += 1
else:
return (row,col)
return False
else:
return False