목록정렬 (19)
홍우진의 개발 일기장
문제 링크 https://www.acmicpc.net/problem/5635 5635번: 생일 어떤 반에 있는 학생들의 생일이 주어졌을 때, 가장 나이가 적은 사람과 가장 많은 사람을 구하는 프로그램을 작성하시오. www.acmicpc.net 풀이 코드 li = [] for _ in range(int(input())): n, d, m, y = input().split() li.append([n, int(d), int(m), int(y)]) li.sort(key=lambda x:(x[3],x[2],x[1])) print(li[-1][0]) print(li[0][0]) 코드 해석 간단한 정렬 문제이다. li라는 리스트를 만든 뒤 입력받은 값을 n, d, m, y로 나누어서 li에 2차원 리스트 형식으로 저장..
문제 링크 https://www.acmicpc.net/problem/10867 10867번: 중복 빼고 정렬하기 첫째 줄에 수의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째에는 숫자가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. www.acmicpc.net 풀이 코드 N = int(input()) number_list = list(map(int, input().split())) for i in sorted(list(set(number_list))): print(i, end = ' ') 코드 해석 수를 리스트에 저장한다. 그 후 set으로 중복을 방지하고 정렬한다.
문제 링크 https://www.acmicpc.net/problem/1302 1302번: 베스트셀러 첫째 줄에 오늘 하루 동안 팔린 책의 개수 N이 주어진다. 이 값은 1,000보다 작거나 같은 자연수이다. 둘째부터 N개의 줄에 책의 제목이 입력으로 들어온다. 책의 제목의 길이는 50보다 작거나 같고 www.acmicpc.net 풀이 코드 n = int(input()) dic = {} for i in range(n): a = input() if a not in dic: dic[a] = 1 else: dic[a] += 1 list = [] num = max(dic.values()) for i in dic: if num == dic[i]: list.append(i) list.sort() print(list[..