๋ฌธ์ ์ค๋ช
https://school.programmers.co.kr/learn/courses/30/lessons/12941
ํ๋ก๊ทธ๋๋จธ์ค
SW๊ฐ๋ฐ์๋ฅผ ์ํ ํ๊ฐ, ๊ต์ก, ์ฑ์ฉ๊น์ง Total Solution์ ์ ๊ณตํ๋ ๊ฐ๋ฐ์ ์ฑ์ฅ์ ์ํ ๋ฒ ์ด์ค์บ ํ
programmers.co.kr
๊ธธ์ด๊ฐ ๊ฐ์ ๋ฐฐ์ด A, B ๋๊ฐ๊ฐ ์์ต๋๋ค. ๊ฐ ๋ฐฐ์ด์ ์์ฐ์๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค.
๋ฐฐ์ด A, B์์ ๊ฐ๊ฐ ํ ๊ฐ์ ์ซ์๋ฅผ ๋ฝ์ ๋ ์๋ฅผ ๊ณฑํฉ๋๋ค. ์ด๋ฌํ ๊ณผ์ ์ ๋ฐฐ์ด์ ๊ธธ์ด๋งํผ ๋ฐ๋ณตํ๋ฉฐ, ๋ ์๋ฅผ ๊ณฑํ ๊ฐ์ ๋์ ํ์ฌ ๋ํฉ๋๋ค. ์ด๋ ์ต์ข
์ ์ผ๋ก ๋์ ๋ ๊ฐ์ด ์ต์๊ฐ ๋๋๋ก ๋ง๋๋ ๊ฒ์ด ๋ชฉํ์
๋๋ค. (๋จ, ๊ฐ ๋ฐฐ์ด์์ k๋ฒ์งธ ์ซ์๋ฅผ ๋ฝ์๋ค๋ฉด ๋ค์์ k๋ฒ์งธ ์ซ์๋ ๋ค์ ๋ฝ์ ์ ์์ต๋๋ค.)
์๋ฅผ ๋ค์ด A = [1, 4, 2] , B = [5, 4, 4] ๋ผ๋ฉด
- A์์ ์ฒซ๋ฒ์งธ ์ซ์์ธ 1, B์์ ์ฒซ๋ฒ์งธ ์ซ์์ธ 5๋ฅผ ๋ฝ์ ๊ณฑํ์ฌ ๋ํฉ๋๋ค. (๋์ ๋ ๊ฐ : 0 + 5(1x5) = 5)
- A์์ ๋๋ฒ์งธ ์ซ์์ธ 4, B์์ ์ธ๋ฒ์งธ ์ซ์์ธ 4๋ฅผ ๋ฝ์ ๊ณฑํ์ฌ ๋ํฉ๋๋ค. (๋์ ๋ ๊ฐ : 5 + 16(4x4) = 21)
- A์์ ์ธ๋ฒ์งธ ์ซ์์ธ 2, B์์ ๋๋ฒ์งธ ์ซ์์ธ 4๋ฅผ ๋ฝ์ ๊ณฑํ์ฌ ๋ํฉ๋๋ค. (๋์ ๋ ๊ฐ : 21 + 8(2x4) = 29)
์ฆ, ์ด ๊ฒฝ์ฐ๊ฐ ์ต์๊ฐ ๋๋ฏ๋ก 29๋ฅผ return ํฉ๋๋ค.
๋ฐฐ์ด A, B๊ฐ ์ฃผ์ด์ง ๋ ์ต์ข ์ ์ผ๋ก ๋์ ๋ ์ต์๊ฐ์ return ํ๋ solution ํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์.
์ ํ ์ฌํญ
- ๋ฐฐ์ด A, B์ ํฌ๊ธฐ : 1,000 ์ดํ์ ์์ฐ์
- ๋ฐฐ์ด A, B์ ์์์ ํฌ๊ธฐ : 1,000 ์ดํ์ ์์ฐ์
์ ์ถ๋ ฅ ์
A | B | answer |
[1, 4, 2] | [5, 4, 4] | 29 |
[1, 2] | [3, 4] | 10 |
์ ์ถ๋ ฅ ์ ์ค๋ช
์ ์ถ๋ ฅ ์ #1
- ๋ฌธ์ ์ ์์์ ๊ฐ์ต๋๋ค.
์ ์ถ๋ ฅ ์ #2
- A์์ ์ฒซ๋ฒ์งธ ์ซ์์ธ 1, B์์ ๋๋ฒ์งธ ์ซ์์ธ 4๋ฅผ ๋ฝ์ ๊ณฑํ์ฌ ๋ํฉ๋๋ค. (๋์ ๋ ๊ฐ : 4)
๋ค์, A์์ ๋๋ฒ์งธ ์ซ์์ธ 2, B์์ ์ฒซ๋ฒ์งธ ์ซ์์ธ 3์ ๋ฝ์ ๊ณฑํ์ฌ ๋ํฉ๋๋ค. (๋์ ๋ ๊ฐ : 4 + 6 = 10)
์ด ๊ฒฝ์ฐ๊ฐ ์ต์์ด๋ฏ๋ก 10์ return ํฉ๋๋ค.
๋ด๊ฐ ์์ฑํ ์ฝ๋
import java.util.*;
class Solution{
public int solution(int[] A, int[] B){
int answer = 0;
// ๋ฐฐ์ด A ์ค๋ฆ์ฐจ์ ์ ๋ ฌ
Arrays.sort(A);
// ๋ฐฐ์ด B ์ค๋ฆ์ฐจ์ ์ ๋ ฌ
Arrays.sort(B);
// ๋ฐ๋ณต๋ฌธ์ ํตํด ๋ ์์ ๊ณฑ ๋ํ๊ธฐ
for (int i = 0; i < A.length; i++) {
// answer์ A์ ๊ฐ๊ณผ B์ ์ญ์ ๊ฐ์ ๊ณฑํด์ ๋ํ๊ธฐ
answer += A[i] * B[B.length-1-i];
}
// answer ๋ฐํ
return answer;
}
}
๋ฌธ์ ๋ฅผ ํ๊ธฐ ์ํด ์๊ฐํ ๋ฐฉํฅ
- ๋ฐฐ์ด์ ํ ์ชฝ์์๋ ๊ฐ์ฅ ํฐ ๊ฐ์, ๋ค๋ฅธ ๋ฐฐ์ด์์๋ ๊ฐ์ฅ ์์ ๊ฐ์ ๊ณฑํ๊ธฐ
- ๋ฐฐ์ด ์ค๋ฆ์ฐจ์, ๋ด๋ฆผ์ฐจ์ ์ ๋ ฌํ๊ธฐ
'๐งฉ ํ๋ก๊ทธ๋๋จธ์ค > ๐ต ์๊ณ ๋ฆฌ์ฆ ํ์ด(Java)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ ํ๋ก๊ทธ๋๋จธ์ค/Java ] ๊ฐ์ ์ซ์๋ ์ซ์ด (1) | 2025.03.27 |
---|---|
[ ํ๋ก๊ทธ๋๋จธ์ค/Java ] JadenCase ๋ฌธ์์ด ๋ง๋ค๊ธฐ (0) | 2025.03.27 |
[ ํ๋ก๊ทธ๋๋จธ์ค/Java ] ์ฌ๋ฐ๋ฅธ ๊ดํธ (0) | 2025.03.26 |
[ ํ๋ก๊ทธ๋๋จธ์ค/Java ] ์ต๋๊ฐ๊ณผ ์ต์๊ฐ (1) | 2025.03.25 |
[ ํ๋ก๊ทธ๋๋จธ์ค/Java ] ๋ฌธ์์ด ๋ด p์ y์ ๊ฐ์ (1) | 2025.03.24 |