题目:
思路:
这个题要注意有个坑,我就在这卡了一会,输入有多组,我是用异常处理做的。另外要注意AB的大小,A可能大于B。然后就分情况讨论就好了,找出最大值,我是把AB间学生的分数存进了一个列表,然后取max,剩下部分没什么特别。
代码:
for i in range(1000):
try:
n, m = map(int, input().split())
begin = list(map(int, input().split()))
student = []
except EOFError:
break
else:
for i in range(m):
a, b, c = map(str, input().split())
# print(a,b,c)
student.append([a, int(b), int(c)])
for i in range(m):
if student[i][0] == 'Q':
l = student[i][1]
p = student[i][2]
k = begin[min(l, p) - 1:max(l, p)]
# print(k)
m = max(k)
print(m)
elif student[i][0] == 'U':
begin[student[i][1] - 1] = student[i][2]