#提交没问题,但示例中 3 2 输出的是4,而实际输出的是首项 a,b = map(int,input().split()) #第一个数大于第二个数的情况 if a>b:#公差a-b 等差数列:a+(a-b) a b ; a b b-(a-b) c=True if b >c: print(2*b-a)#b为等差中项 elif a<c: print(2*a-b)#a为等差中项 #第一个数小于第二个数的情况 elif a<b:#公差b-a 等差数列:a-(b-a) a b , a b b+(b-a) c=True if a>c: print(2*a-b)#a为等差中项 elif b<c: print(2*b-a)#b为等差中项 #第一个数等于第二个数的情况 elif a==b: print(a) #调整了一下,以构建等差数列列表方法,用原始位置元素大小和排序后元素大小比较是否一致,分别求首尾项,思路应该更清晰了吧OO ab=[int(i) for i in input().split()]#一行输入两个数,以空格分隔开 a,b=ab[0],ab[1]#a,b分别代表输入的第一个数和第二个数 ab.sort()#重新排序 if a<b:#初始顺序元素大小比较与和排序后大小一致,将求首项 c=2*a-b ab.insert(0,c) print(ab[0]) if a>b:#初始顺序元素大小比较与和排序后大小相反,将求最后一项 c=2*a-b ab.append(c) print(ab[-1]) elif a==b: print(a)