본문 바로가기

Algorithm 💡/Sorting19

[백준 11004번] K번째 수 https://www.acmicpc.net/problem/11004import sysinput = sys.stdin.readlinen,k = map(int,input().split())numbers = sorted(list(map(int,input().split())))print(numbers[k-1]) 이번 문제는 주어진 n개의 숫자들을 오름차순으로 정렬했을 때 k번째로 오는 숫자를 출력하는 문제이다. 문제 조건이 5*(10**6)인 것을 보고 단순히 파이썬에서 정의된 sorted() 함수를 사용해도 시간초과가 발생하지 않겠다고 판단하여 간단하게 함수를 사용해서 풀이하였다. 2024. 7. 9.
[소프티어 6247번] 자동차 테스트(HSAT 7회 정기 코딩 인증평가 기출) Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai import sysinput = sys.stdin.readline# 데이터의 중앙값을 사용하여 자동차의 평균적인 연비를 파악# n대의 자동차를 새로 만들었지만 3대의 자동차만 테스트할 수 있는 상황# n대의 자동차의 실제 연비 값이 주어졌을 때, q개의 질의에 대해 임의로 3대의 자동차를 골라 테스트하여# 중앙값이 mi값이 나오는 서로 다른 경우의 수# n개의 자동차 연비는 서로 다른 값 !n, q = map(int,input().split())values = sorted(list(map(int,input().split())))length = len(values)index = 1test_dict = dict()test_inputs = .. 2024. 6. 23.
[프로그래머스] 최솟값 만들기 import heapq def solution(A,B): result = 0 count = len(A) # A에 대한 최소 힙 / 최대 힙, B에 대한 최소 힙 / 최대 힙 min_heap_a, max_heap_a, min_heap_b, max_heap_b = [], [], [], [] for a in A: heapq.heappush(min_heap_a,a) heapq.heappush(max_heap_a,-a) for b in B: heapq.heappush(min_heap_b,b) heapq.heappush(max_heap_b,-b) while count > 0: # 원소의 개수만큼 반복 min_A, max_A, min_B, max_B = min_heap_a[0], -max_heap_a[0], min_.. 2024. 1. 5.
[백준 2108번] 통계학 import sys input = sys.stdin.readline # n 입력받기 n = int(input()) # n개의 값을 저장하는 리스트 array = [0]*n # 빈도수를 저장하는 리스트 count_list = [] # 최빈값 mode = 0 # 입력받기 for i in range(n): array[i] = int(input()) # 중간 인덱스 mid_index = n//2 # 오름차순 정렬 array.sort() # 집합 자료형 사용 set_n = set(array) # 사전 자료형 사용 dictionary = dict() # 사전 자료형에 숫자 '값 : 빈도수(카운팅)' 저장 => 시간복잡도 최소화 for i in array: if i not in dictionary: dictionar.. 2023. 2. 24.
[백준 25305번] 커트라인 import sys input = sys.stdin.readline n, k = map(int,input().split()) array = sorted(list(map(int,input().split()))) print(array[n-k]) 2023. 2. 24.
[백준 2587번] 대표값2 import math array = [0] * 5 for i in range(5): array[i] = int(input()) array.sort() print(math.floor(sum(array)/5)) print(array[2]) 2023. 2. 24.