함께하는 데이터 분석

[이것이 코딩테스트다] 이코테 파이썬 정렬 본문

코딩 테스트/이것이 코딩테스트다

[이것이 코딩테스트다] 이코테 파이썬 정렬

JEONGHEON 2023. 7. 15. 22:06

위에서 아래로

N = int(input())
arr = []

for i in range(N) :
    arr.append(int(input()))
    
arr = sorted(arr, reverse = True)
    
for j in arr :
    print(j, end = ' ')

 

성적이 낮은 순서로 학생 출력하기

N = int(input())
arr = []

for _ in range(N) :
    data = input().split()
    arr.append((data[0], int(data[1])))
    
arr = sorted(arr, key = lambda x : x[1])
    
for student in arr :
    print(student[0], end = ' ')

 

두 배열의 원소 교체

N, K = map(int, input().split())
arrA = list(map(int, input().split()))
arrB = list(map(int, input().split()))

arrA.sort()
arrB.sort(reverse = True)

for i in range(K) :
    if arrA[i] < arrB[i] :
        arrA[i], arrB[i] = arrB[i], arrA[i]
    else :
        break
        
print(sum(arrA))

 

국영수

N = int(input())
arr = []

for _ in range(N) :
    data = input().split()
    arr.append((data[0], int(data[1]), int(data[2]), int(data[3])))

arr = sorted(arr, key = lambda x : (-x[1], x[2], -x[3], x[0]))

for student in arr :
    print(student[0])

 

안테나

N = int(input())
arr = list(map(int, input().split()))

arr.sort()

ran = []

for i in range(arr[0], arr[N - 1] + 1) :
    a = 0
    for j in arr :
        a += abs(j - i)
    ran.append((a, i))

ran.sort(key = lambda x : x[0])

arr1 = []
for k in ran :
    arr1.append(k[1])
print(arr1[0])
N = int(input())
arr = list(map(int, input().split()))
arr.sort()

print(arr[(n - 1) // 2])