Quick actions

cmd+k|ctrl+k

Navigation

Languages

Zig Zag

Snippet info

Language

Python

Visibility

public

Author

krishnakanth

Created

2022-12-19T01:15:39.379095Z

Updated

2022-12-19T01:15:39.379095Z

def findZigZagSequence(a, n):
    a.sort()
    mid = int((n + 1)/2)-1
    a[mid], a[n-1] = a[n-1], a[mid]
    
    # mid_n = [a[int((n + 1)/2)-1]]
    # f = []
    # b = []
    # for i in range(mid):
    #     f.append(a[i])
    # for i in range(mid+1,n):
    #     b.append(a[i])
    # f.sort()
    
    # return f+mid_n+sorted(b,reverse=True)

    st = mid + 1
    ed = n - 1
    while(st <= n - mid+1):
        if a[st] < a[st+1]:
            a[st], a[st+1] = a[st+1], a[st]
        st = st + 1
    st = 0  
    while(st <= mid-1):
        if a[st] > a[st+1]:
            a[st], a[st+1] = a[st+1], a[st]
        st = st + 1    
    return a
    
test_cases = int(input())
for cs in range (test_cases):
    n = int(input())
    a = list(map(int, input().split()))
    arr = findZigZagSequence(a, n)
    print(*arr)



INFO