テストケースの2/10がWAになります。正答率からしてNが極小か極大で間違っていると推測はしているのですが手詰まりになってしまいましたため、どこが間違っているか教えていただけますでしょうか?
python3
1 2def merge_sort(aList): 3 if len(aList) <= 1: 4 return aList 5 6 mid = len(aList) // 2 7 left = aList[:mid] 8 right = aList[mid:] 9 10 left = merge_sort(left) 11 right = merge_sort(right) 12 13 return merge(left, right) 14 15 16def merge(left, right): 17 sorted_list = [] 18 left_index = 0 19 right_index = 0 20 21 while left_index < len(left) and right_index < len(right): 22 if left[left_index][1] <= right[right_index][1]: 23 sorted_list.append(left[left_index]) 24 left_index += 1 25 else: 26 sorted_list.append(right[right_index]) 27 right_index += 1 28 29 if left: 30 sorted_list.extend(left[left_index:]) 31 if right: 32 sorted_list.extend(right[right_index:]) 33 34 return sorted_list 35 36 37N = int(input()) 38L = [] 39A = [list(input().split()) for _ in range(N)] 40for i in range(N): 41 L.append([A[i][0], int(A[i][1])]) 42 43print(merge_sort(L)[-2][0])
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。