본문 바로가기
반응형

백준알고리즘/정렬18

(Python/🥉2)대표값2 문제 출처:https://www.acmicpc.net/problem/2587 2587번: 대표값2 어떤 수들이 있을 때, 그 수들을 대표하는 값으로 가장 흔하게 쓰이는 것은 평균이다. 평균은 주어진 모든 수의 합을 수의 개수로 나눈 것이다. 예를 들어 10, 40, 30, 60, 30의 평균은 (10 + 40 + 30 + 60 + www.acmicpc.net 풀이: res = sorted([int(input()) for _ in range(5)]) print(sum(res)// len(res), res[2]) 2022. 11. 5.
(Python/🥉2)백준알고리즘 25305번: 커트라인 문제출처:https://www.acmicpc.net/problem/25305 25305번: 커트라인 시험 응시자들 가운데 1등은 100점, 2등은 98점, 3등은 93점이다. 2등까지 상을 받으므로 커트라인은 98점이다. www.acmicpc.net 풀이: N,K = map(int,input().split(" ")) # N: 학생 수 K: 수상자 arr = list(map(int,input().split(" "))) arr.sort() arr.reverse() print(arr[K-1]) sort,reverse,출력 한번에 N,K = map(int,input().split(" ")) # N: 학생 수 K: 수상자 print(sorted(map(int,input().split(" ")), reverse =.. 2022. 8. 23.
(Python/🥈2)백준 알고리즘 18870번: 좌표 압축 문제 출처:https://www.acmicpc.net/problem/18870 18870번: 좌표 압축 수직선 위에 N개의 좌표 X1, X2, ..., XN이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X'i의 값은 Xi > Xj를 만족하는 서로 다른 좌표의 개수와 같아야 한다. X1, X2, ..., XN에 좌 www.acmicpc.net 풀이: sys import n = int(input()) arr = list(map(int, input().split())) arr_list = sorted(list(set(arr))) # 중복제거 arr_dic = {} for i in range(len(arr_list)): # arr_list 에 길이만큼 포문을 돌려 arr_dic[a.. 2022. 5. 25.
(Python/🥈5)백준 알고리즘 10814번: 나이순 정렬 문제 출처:https://www.acmicpc.net/problem/10814 10814번: 나이순 정렬 온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을 www.acmicpc.net 풀이: N = int(sys.stdin.readline()) array = [] for i in range(N): array.append(list(map(str,sys.stdin.readline().split()))) array.sort(key = lambda x: (x[1],x[0]),reverse=True) for i in array: print(i[0],i[1]) 처음에는 쉽네 생각하고.. 2022. 5. 24.
(Python/🥈5)백준 알고리즘 1181번: 단어 정렬 문제 출처:https://www.acmicpc.net/problem/1181 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net 풀이: import sys N = int(sys.stdin.readline()) array = [] for i in range(N): array.append(sys.stdin.readline().rstrip()) set = set(array) #중복값을 제거 array = list(set) array.sort() # 일단 사전순으로 정렬 해주고 array.sort(key=le.. 2022. 5. 24.
(Python/🥈5)백준 알고리즘 11651번: 좌표 정렬하기2 문제 출처:https://www.acmicpc.net/step/9 정렬 단계 시간 복잡도가 O(nlogn)인 정렬 알고리즘으로 풀 수 있습니다. 예를 들면 병합 정렬, 힙 정렬 등이 있지만, 어려운 알고리즘이므로 지금은 언어에 내장된 정렬 함수를 쓰는 것을 추천드립니다. www.acmicpc.net 풀이: N = int(sys.stdin.readline()) array = [] for i in range(N): # x,y = map(int,input().split()) # array.append((x,y)) array.append(list(map(int,sys.stdin.readline().split()))) print(array) array.sort(key = lambda x: (x[1],x[0])) .. 2022. 5. 24.
반응형