โ๋ฌธ์
https://www.acmicpc.net/problem/11399
๋ฉ๋ชจ๋ฆฌ: 32412 KB, ์๊ฐ: 36 ms
๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ, ์ ๋ ฌ
์ธํ์ํ์๋ ATM์ด 1๋๋ฐ์ ์๋ค. ์ง๊ธ ์ด ATM์์ N๋ช ์ ์ฌ๋๋ค์ด ์ค์ ์์๋ค. ์ฌ๋์ 1๋ฒ๋ถํฐ N๋ฒ๊น์ง ๋ฒํธ๊ฐ ๋งค๊ฒจ์ ธ ์์ผ๋ฉฐ, i๋ฒ ์ฌ๋์ด ๋์ ์ธ์ถํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ Pi๋ถ์ด๋ค.
์ฌ๋๋ค์ด ์ค์ ์๋ ์์์ ๋ฐ๋ผ์, ๋์ ์ธ์ถํ๋๋ฐ ํ์ํ ์๊ฐ์ ํฉ์ด ๋ฌ๋ผ์ง๊ฒ ๋๋ค. ์๋ฅผ ๋ค์ด, ์ด 5๋ช ์ด ์๊ณ , P1 = 3, P2 = 1, P3 = 4, P4 = 3, P5 = 2 ์ธ ๊ฒฝ์ฐ๋ฅผ ์๊ฐํด๋ณด์. [1, 2, 3, 4, 5] ์์๋ก ์ค์ ์ ๋ค๋ฉด, 1๋ฒ ์ฌ๋์ 3๋ถ๋ง์ ๋์ ๋ฝ์ ์ ์๋ค. 2๋ฒ ์ฌ๋์ 1๋ฒ ์ฌ๋์ด ๋์ ๋ฝ์ ๋ ๊น์ง ๊ธฐ๋ค๋ ค์ผ ํ๊ธฐ ๋๋ฌธ์, 3+1 = 4๋ถ์ด ๊ฑธ๋ฆฌ๊ฒ ๋๋ค. 3๋ฒ ์ฌ๋์ 1๋ฒ, 2๋ฒ ์ฌ๋์ด ๋์ ๋ฝ์ ๋๊น์ง ๊ธฐ๋ค๋ ค์ผ ํ๊ธฐ ๋๋ฌธ์, ์ด 3+1+4 = 8๋ถ์ด ํ์ํ๊ฒ ๋๋ค. 4๋ฒ ์ฌ๋์ 3+1+4+3 = 11๋ถ, 5๋ฒ ์ฌ๋์ 3+1+4+3+2 = 13๋ถ์ด ๊ฑธ๋ฆฌ๊ฒ ๋๋ค. ์ด ๊ฒฝ์ฐ์ ๊ฐ ์ฌ๋์ด ๋์ ์ธ์ถํ๋๋ฐ ํ์ํ ์๊ฐ์ ํฉ์ 3+4+8+11+13 = 39๋ถ์ด ๋๋ค.
์ค์ [2, 5, 1, 4, 3] ์์๋ก ์ค์ ์๋ฉด, 2๋ฒ ์ฌ๋์ 1๋ถ๋ง์, 5๋ฒ ์ฌ๋์ 1+2 = 3๋ถ, 1๋ฒ ์ฌ๋์ 1+2+3 = 6๋ถ, 4๋ฒ ์ฌ๋์ 1+2+3+3 = 9๋ถ, 3๋ฒ ์ฌ๋์ 1+2+3+3+4 = 13๋ถ์ด ๊ฑธ๋ฆฌ๊ฒ ๋๋ค. ๊ฐ ์ฌ๋์ด ๋์ ์ธ์ถํ๋๋ฐ ํ์ํ ์๊ฐ์ ํฉ์ 1+3+6+9+13 = 32๋ถ์ด๋ค. ์ด ๋ฐฉ๋ฒ๋ณด๋ค ๋ ํ์ํ ์๊ฐ์ ํฉ์ ์ต์๋ก ๋ง๋ค ์๋ ์๋ค.
์ค์ ์ ์๋ ์ฌ๋์ ์ N๊ณผ ๊ฐ ์ฌ๋์ด ๋์ ์ธ์ถํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ Pi๊ฐ ์ฃผ์ด์ก์ ๋, ๊ฐ ์ฌ๋์ด ๋์ ์ธ์ถํ๋๋ฐ ํ์ํ ์๊ฐ์ ํฉ์ ์ต์๊ฐ์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
โ๐ปํ์ด
์๊ฐ์ ํฉ์ ์ต์๊ฐ์ ๊ตฌํ๋ ๋ฌธ์ ์ด๋ค. ๊ฒฐ๋ก ์ ์ผ๋ก ๋์ ์ธ์ถํ๋ ๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ด ๊ฐ์ฅ ์์ ์ฌ๋๋ถํฐ ํ๋ฉด ์ต์ข ์ ์ผ๋ก ๊ทธ ๊ฐ์ด ํฉ์ ์ต์๊ฐ์ด ๋๋ค.
๐ป์ฝ๋
import sys
input = sys.stdin.readline
n = int(input())
p = list(map(int, input().split()))
p.sort()
answer = [p[0]]
for i in range(1, n):
answer.append(answer[i-1] + p[i])
print(sum(answer))
๐ํ๊ธฐ
์ฒ์์๋ ์ด๊ฑฐ ๊ทธ๋ฅ ์ ๋ ฌ๋ฌธ์ ์๋๊ฐ ํ์ง๋ง ์ต์ ์ ํด๋ฅผ ๊ตฌํ๋ ๋ฐฉ๋ฒ์ด๋๊น ๊ทธ๋ฆฌ๋๋ ๋ง๋ ๊ฒ ๊ฐ๋ค.
'Coding Test > Algorithms' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Baekjoon] 1449. ์๋ฆฌ๊ณต ํญ์น (0) | 2024.12.21 |
---|---|
[Baekjoon] 1010.๋ค๋ฆฌ ๋๊ธฐ/Python - Silver5 (1) | 2024.12.06 |
[Baekjoon] 1931.ํ์์ค ๋ฐฐ์ /Python - Silver1 (1) | 2024.11.28 |
[Baekjoon] 1541.์์ด๋ฒ๋ฆฐ ๊ดํธ/Python - Silver2 (0) | 2024.11.27 |
[ํ๋ก๊ทธ๋๋จธ์ค] N์ผ๋ก ํํ/Python - Lv.3 (1) | 2024.11.26 |