๋ฌธ์
๊ธธ์ด๊ฐ ๊ฐ์ ๋ฐฐ์ด 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 ์ดํ์ ์์ฐ์
๋์ ์ฝ๋
def solution(A,B):
k = 0
A.sort(reverse=False)
B.sort(reverse=True)
for i in range(len(A)):
k += A[i] * B[i]
return k
๋ถ์ > ํ ๋ฐฐ์ด์ ์ค๋ฆ์ฐจ์ ๋ค๋ฅธ ๋ฐฐ์ด์ ๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ ฌํ ํ์ ์ธ๋ฑ์ค๊ฐ ๊ฐ์ ์ ๋ผ๋ฆฌ ๊ณฑํด์ฃผ์์ ๋ ์ต์๊ฐ์ ๊ตฌํ ์ ์๋ค.
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์ต์๊ฐ ๋ง๋ค๊ธฐ
๊ธธ์ด๊ฐ ๊ฐ์ ๋ฐฐ์ด A, B ๋๊ฐ๊ฐ ์์ต๋๋ค. ๊ฐ ๋ฐฐ์ด์ ์์ฐ์๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค. ๋ฐฐ์ด A, B์์ ๊ฐ๊ฐ ํ ๊ฐ์ ์ซ์๋ฅผ ๋ฝ์ ๋ ์๋ฅผ ๊ณฑํฉ๋๋ค. ์ด๋ฌํ ๊ณผ์ ์ ๋ฐฐ์ด์ ๊ธธ์ด๋งํผ ๋ฐ๋ณตํ๋ฉฐ, ๋ ์๋ฅผ ๊ณฑ
programmers.co.kr
'Algorithm > Programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Programmers] JadenCase ๋ฌธ์์ด ๋ง๋ค๊ธฐ (0) | 2022.05.04 |
---|---|
[Programmers] ์ซ์์ ํํ (0) | 2022.05.04 |
[Programmers] ์์ฐ (0) | 2022.05.04 |
[Programmers] ๋ฐฉ๋ฌธ ๊ธธ์ด (0) | 2022.05.04 |
[Programmers] ๋ ๊ฐ ๋ฝ์์ ๋ํ๊ธฐ (0) | 2022.05.03 |