https://www.acmicpc.net/problem/2217 2217번: 로프 N(1 ≤ N ≤ 100,000)개의 로프가 있다. 이 로프를 이용하여 이런 저런 물체를 들어올릴 수 있다. 각각의 로프는 그 굵기나 길이가 다르기 때문에 들 수 있는 물체의 중량이 서로 다를 수도 있다. 하 www.acmicpc.net 1. 문제 2. 정답 코드 n = int(input()) ropes = [] for _ in range(n) : ropes.append(int(input())) ropes.sort() # 오름차순 정렬 # each_max는 각 로프를 사용했을 때 들어올릴 수 있는 중량 합을 담는 리스트 each_max = [x * (len(ropes) - i) for i, x in enumerate(ro..
https://www.acmicpc.net/problem/11399 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net 1. 문제 2. 정답 코드 n = int(input()) p = list(map(int, input().split())) # 앞사람의 인출 시간이 짧을수록 총 인출 시간이 단축된다. # 즉, 인출 시간이 오름차순 정렬되어 있다면 총 인출 시간의 최솟값을 구할 수 있다. p.sort() # p 오름차순 정렬 answer = 0 accumulation = 0 for pi in p : accumulation += pi # i번째 사..
https://www.acmicpc.net/problem/2839 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net 1. 문제 2. 정답 코드 n = int(input()) answer = 0 while n >= 3 : if n % 5 == 0 : answer += n // 5 n = 0 break n -= 3 answer += 1 if n != 0 : answer = -1 print(answer) 그리디 알고리즘이므로, 일단 5킬로그램 봉지로 n 을 모두 배달할 수 있는지 확인한다. 만약 n이 5의 배수라면, 곧 바로 ..
https://www.acmicpc.net/problem/1924 1924번: 2007년 첫째 줄에 빈 칸을 사이에 두고 x(1 ≤ x ≤ 12)와 y(1 ≤ y ≤ 31)이 주어진다. 참고로 2007년에는 1, 3, 5, 7, 8, 10, 12월은 31일까지, 4, 6, 9, 11월은 30일까지, 2월은 28일까지 있다. www.acmicpc.net 1. 문제 2. 정답 코드 m, d = map(int, input().split()) MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] DAYS = ['MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT', 'SUN'] # 1월 1일 월요일 total_days = d # 입력 월의 day..