알고리즘/sw
4843. [파이썬 S/W 문제해결 기본] 2일차 - 특별한 정렬
HAN_PY
2020. 3. 27. 23:44
반응형
문제의 저작권은 SW Expert Academy에 있습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
TC = int(input())
for tc in range(1, TC+1):
print('#%d'%tc, end = "")
n = int(input())
data = list(map(int, input().split()))
for i in range(n-1):
q = i
if not i%2:
for j1 in range(i+1, n):
if data[q] < data[j1]:
q= j1
else:
for j2 in range(i+1, n):
if data[q] > data[j2]:
q= j2
data[i], data[q] = data[q], data[i]
for k in range(10):
print(' %d' % data[k], end="")
print()
|
cs |
프린터를 하나하나씩 한다는 점에서 생소할 수 있다.
간단히 풀어서 이야기 하면 문제에서 요구하는 것 처럼
짝수 홀 수 나눠서 최대값과 최소값을 하나씩 뽑아서 index 0번 부터 차례대로 자리를 바꿔주는 것이다.
반응형