티스토리 뷰
https://programmers.co.kr/learn/courses/30/lessons/12941?language=java
알고리즘 연습 - 최솟값 만들기 | 프로그래머스
길이가 같은 배열 A, B 두개가 있습니다. 각 배열은 자연수로 이루어져 있습니다. 배열 A, B에서 각각 한 개의 숫자를 뽑아 두 수를 곱합니다. 이러한 과정을 배열의 길이만큼 반복하며, 두 수를 곱한 값을 누적하여 더합니다. 이때 최종적으로 누적된 값이 최소가 되도록 만드는 것이 목표입니다. (단, 각 배열에서 k번째 숫자를 뽑았다면 다음에 k번째 숫자는 다시 뽑을 수 없습니다.) 예를 들어 A = [1, 4, 2] , B = [5, 4, 4] 라면
programmers.co.kr
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
import org.junit.Test;
import java.util.Arrays;
public class SolutionTest3 {
@Test
public void 최솟값 () {
//given
int[] A = {1, 4, 2};
int[] B = {5, 4, 4};
//when
int result = solution(A, B);
//then
assertThat(result,is(29));
}
public int solution(int[] A, int[] B) {
int answer = 0;
for(int i = 0; i < A.length; i++) {
answer += A[i] * B[B.length-i-1];
}
return answer;
}
}
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4f; text-decoration:none">Colored by Color Scripter
|
(처음 배열의 제일 작은 수 * 두번째 배열의 제일 큰 수) +
(처음 배열의 두번째로 작은 수 * 두번째 배열의 두번째로 큰 수) + ...
이게 제일 작은 누적 값이 나와서 해결했다.
'기초CS > 알고리즘' 카테고리의 다른 글
[프로그래머스] 알고리즘 연습 문제 : 탑 (자바/JAVA) (0) | 2019.06.21 |
---|---|
[프로그래머스] 알고리즘 연습 문제 : 스킬트리 (자바/JAVA) (0) | 2019.06.21 |
[프로그래머스] 알고리즘 연습 문제 : 체육복 (자바/JAVA) (0) | 2019.05.30 |
[프로그래머스] 알고리즘 연습 문제 : 나누어 떨어지는 숫자 배열 (자바/JAVA) (0) | 2019.05.28 |
[프로그래머스] 알고리즘 연습 문제 : 문자열 내 마음대로 정렬하기(자바/JAVA) (0) | 2019.05.27 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 객체지향과 디자인패턴
- 더 나은 내일
- 쇠막대기
- 124 나라의 숫자
- 타겟 넘버
- cgv
- 최솟값
- 파이팅코리아
- 노션트렐로광고X
- codility
- Spring
- 다음 맵 api
- 알고리즘
- 카카오인턴
- 텔레그램
- 자바
- 예매 알림
- 맵 api
- 스프링 부트
- 프로그래머스
- 안드로이드 스튜디오
- AWS
- FrogJmp
- 기능개발
- json
- java
- 문자열 내 마음대로 정렬하기
- API
- K번째수
- 완주하지 못한 선수
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
글 보관함