๋ฌธ์ (์ถ์ฒ: https://www.acmicpc.net/problem/11399)
<ATM>
๋ฌธ์
์ธํ ์ํ์๋ 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๊ฐ ์ฃผ์ด์ก์ ๋, ๊ฐ ์ฌ๋์ด ๋์ ์ธ์ถํ๋๋ฐ ํ์ํ ์๊ฐ์ ํฉ์ ์ต์๊ฐ์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ์ฌ๋์ ์ N(1 ≤ N ≤ 1,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค์๋ ๊ฐ ์ฌ๋์ด ๋์ ์ธ์ถํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ Pi
๊ฐ ์ฃผ์ด์ง๋ค. (1 ≤ Pi ≤ 1,000)
์ถ๋ ฅ
์ฒซ์งธ ์ค์ ๊ฐ ์ฌ๋์ด ๋์ ์ธ์ถํ๋๋ฐ ํ์ํ ์๊ฐ์ ํฉ์ ์ต์๊ฐ์ ์ถ๋ ฅํ๋ค.
๋ฌธ์ ํ์ด
- my solution
import sys
if __name__=='__main__':
N=int(input()) # ์ฌ๋์ ์
arr=list(map(int, sys.stdin.readline().split())) # ์ฌ๋์ด ๋์ ์ธ์ถํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ
arr.sort() # ์ ๋ ฌ
temp=[arr[0]]
for i in range(1,len(arr)): # ์๊ฐ์ ํฉ์ ์ต์๊ฐ ๊ตฌํ๊ธฐ
temp.append(temp[-1]+arr[i])
print(sum(temp)) # ์ด ํฉ
- ๋์ ์ธ์ถํ๋๋ฐ ํ์ํ ์๊ฐ์ ํฉ์ ์ต์๊ฐ์ผ๋ก ๋ง๋ค๊ธฐ ์ํ์ฌ ์ ๋ ฌ
- ์์ ๊ฐ๋ถํฐ ๋ํ๊ธฐ
- answer: list์ ํฉ
์๊ฐ๐ค
์ด ๋ฌธ์ ๋ฅผ ํ๊ธฐ ์ํด ์ฌ์ฉํด์ผ ํ๋ ์๊ณ ๋ฆฌ์ฆ์ ์ ๋ ฌ๊ณผ ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ผ๊ณ ํ๋ค.
๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ์ด๋?
๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๊ณผ์ ์์ ๊ทธ ์๊ฐ์๊ฐ๋ง๋ค ์ต์ ์ด๋ผ๊ณ ์๊ฐ๋๋ ๊ฒฐ์ ์ ํ๋ ๋ฐฉ์์ผ๋ก
์งํํ์ฌ ์ต์ข ํด๋ต์ ๋๋ฌํ๋ ๋ฌธ์ ํด๊ฒฐ ๋ฐฉ์์ด๋ค.
์ ๋ ฌ์ ํด์ผ ํ๋ ๊ฒ์ ์๊ฐํด๋์ง๋ง ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ์ ์๊ฐํ์ง ๋ชปํ๋ค.
์ต์๊ฐ์ผ๋ก ๋ง๋ค๊ธฐ ์ํด ์ ๋ ฌํด์ผ ํ๋ฉฐ, ๋์ ๋ฝ๋ ์๊ฐ์ ๊ตฌํ๊ธฐ ์ํด์๋ ์์์๋ถํฐ
ํ๋์ฉ ๋ํ๋ฉด ๋๋ค๋ ์๊ฐ์ ์ฝ๋๋ฅผ ์์ ๊ฐ์ด ๊ตฌํํ์๋ค.
์ด๋ค ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํด์ผ ํ๋์ง๋ถํฐ ํ์ ํ๊ธฐ๊ฐ ํ๋ ๊ฒ ๊ฐ๋ค. ๐ฅ
'๐Algorithm > ๐ฅBaekjoon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Baekjoon] 10211_Maximum Subarray (0) | 2021.11.01 |
---|---|
[Baekjoon] 13417_์นด๋ ๋ฌธ์์ด (0) | 2021.10.20 |
[Baekjoon] 1662_์์ถ (0) | 2021.10.10 |
[Baekjoon] 20920_์๋จ์ด ์๊ธฐ๋ ๊ดด๋ก์ (0) | 2021.10.07 |
[Baekjoon] 16922_๋ก๋ง ์ซ์ ๋ง๋ค๊ธฐ (0) | 2021.10.06 |