수학

알고리즘 연습/백준

[Python - 1049] 기타줄 (S4)

문제1049번: 기타줄문제 이해끊어진 기타 줄을 새로 구매끊어진 기타 줄 개수 N, 기타 줄 브랜드 M기타 줄 6개 패키지 가격과 낱개(1)로 살 때의 가격이 주어짐적어도 N개의 기타 줄을 사기 위한 최소 가격은?풀이최소 가격을 구하는 것이므로 6개의 최소 가격과 1개의 최소 가격 이외에는 필요가 없음기타 줄 6개의 최소 가격과 기타 줄 1개의 최소 가격을 구해 N개를 구매하기 위한 가격 도출기타 줄 6개의 최솟값과 1개의 최솟값을 각각 구함6개 6개 > 1개 * 6이면, 6개를 (N // 6) 개만큼 구매(N % 6) 개의 가격이 싼 걸로 구매, 1개 * (N % 6) vs 6개코드기타 줄의 최대 가격이 1000이므로 최솟값을 1001로 설정import sysinput = sys.stdin.readli..

알고리즘 연습/백준

[Python - 1026] 보물 (S4)

문제1026번: 보물문제 이해길이가 N인 정수 배열 A와 BS = A[0] × B[0] + ... + A[N-1] × B[N-1]S의 값을 최소화하기 위해 A의 수 재배열, B의 수는 재배열 XA의 수를 재배열하나 A, B의 수를 재배열하나 결과는 달라지지 않음A의 수는 모든 B의 수와 연산이 될 수 있기 때문풀이B의 가장 큰 수를 A의 가장 작은 수와 곱하게 만들어 최솟값 계산A와 B를 모두 조작해도 관계없기 때문에 A와 B를 정렬하여 계산A를 내림차순으로 정렬B를 오름차순으로 정렬A와 B의 각 원소의 곱을 계산코드import sysinput = sys.stdin.readlinen = int(input())A = sorted(list(map(int, input().split())), reverse=Tr..

기억에 남는 블로그 닉네임
'수학' 태그의 글 목록