diff --git "a/3.6 \320\240\320\260\320\275\320\264\320\276\320\274\320\270\320\267\320\270\321\200\320\276\320\262\320\260\320\275\320\275\321\213\320\265 \320\260\320\273\320\263\320\276\321\200\320\270\321\202\320\274\321\213/A/solution.py" "b/3.6 \320\240\320\260\320\275\320\264\320\276\320\274\320\270\320\267\320\270\321\200\320\276\320\262\320\260\320\275\320\275\321\213\320\265 \320\260\320\273\320\263\320\276\321\200\320\270\321\202\320\274\321\213/A/solution.py" index dcb6a6d..3b7f9f3 100644 --- "a/3.6 \320\240\320\260\320\275\320\264\320\276\320\274\320\270\320\267\320\270\321\200\320\276\320\262\320\260\320\275\320\275\321\213\320\265 \320\260\320\273\320\263\320\276\321\200\320\270\321\202\320\274\321\213/A/solution.py" +++ "b/3.6 \320\240\320\260\320\275\320\264\320\276\320\274\320\270\320\267\320\270\321\200\320\276\320\262\320\260\320\275\320\275\321\213\320\265 \320\260\320\273\320\263\320\276\321\200\320\270\321\202\320\274\321\213/A/solution.py" @@ -1,22 +1,16 @@ # Python 3.12.1 -# Это не разбиение Ломуто, но в тестах ошибка и в итоге нужен такой алгоритм для этих тестов -n = int(input()) -m = list(map(int, input().split())) - -def lomuto(arr): - - left_list = [] - right_list = [] +def lomuto(n, arr): pivot = arr[0] + i = 1 + for j in range(1, n): + if arr[j] <= pivot: + arr[i], arr[j] = arr[j], arr[i] + i += 1 + arr[0], arr[i - 1] = arr[i - 1], arr[0] + return arr - for i in arr: - if i <= pivot: - left_list.append(i) - else: - right_list.append(i) - left_list[0], left_list[-1] = left_list[-1], left_list[0] - - return left_list + right_list - -print(*lomuto(m)) +n = int(input()) +a = list(map(int, input().split())) +result = lomuto(n, a) +print(' '.join(map(str, result)))