์ƒˆ์†Œ์‹

๐Ÿงฎ ์•Œ๊ณ ๋ฆฌ์ฆ˜/-- ๋ฐฑ์ค€ (BOJ) - Python

๋ฐฑ์ค€ (boj) 2217 ํŒŒ์ด์ฌ - ๋กœํ”„

  • -

๋ฌธ์ œ ํ’€์ด : https://www.acmicpc.net/problem/2217

 

2217๋ฒˆ: ๋กœํ”„

N(1≤N≤100,000)๊ฐœ์˜ ๋กœํ”„๊ฐ€ ์žˆ๋‹ค. ์ด ๋กœํ”„๋ฅผ ์ด์šฉํ•˜์—ฌ ์ด๋Ÿฐ ์ €๋Ÿฐ ๋ฌผ์ฒด๋ฅผ ๋“ค์–ด์˜ฌ๋ฆด ์ˆ˜ ์žˆ๋‹ค. ๊ฐ๊ฐ์˜ ๋กœํ”„๋Š” ๊ทธ ๊ตต๊ธฐ๋‚˜ ๊ธธ์ด๊ฐ€ ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ๋“ค ์ˆ˜ ์žˆ๋Š” ๋ฌผ์ฒด์˜ ์ค‘๋Ÿ‰์ด ์„œ๋กœ ๋‹ค๋ฅผ ์ˆ˜๋„ ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋กœํ”„๋ฅผ ๋ณ‘๋ ฌ๋กœ ์—ฐ๊ฒฐํ•˜๋ฉด ๊ฐ๊ฐ์˜ ๋กœํ”„์— ๊ฑธ๋ฆฌ๋Š” ์ค‘๋Ÿ‰์„ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋‹ค. k๊ฐœ์˜ ๋กœํ”„๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ค‘๋Ÿ‰์ด w์ธ ๋ฌผ์ฒด๋ฅผ ๋“ค์–ด์˜ฌ๋ฆด ๋•Œ, ๊ฐ๊ฐ์˜ ๋กœํ”„์—๋Š” ๋ชจ๋‘ ๊ณ ๋ฅด๊ฒŒ w/k ๋งŒํผ์˜ ์ค‘๋Ÿ‰์ด ๊ฑธ๋ฆฌ๊ฒŒ ๋œ๋‹ค. ๊ฐ ๋กœํ”„๋“ค์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ด ๋กœํ”„๋“ค์„

www.acmicpc.net

 

 

์˜ˆ๋ฅผ๋“ค์–ด 5๊ฐœ์˜ ๋กœํ”„๊ฐ€ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ด๋ณด๋ฉด : rope = [32,30,25,12,1]

๋กœํ”„๋ฅผ 5๊ฐœ 4๊ฐœ 3๊ฐœ 2๊ฐœ 1๊ฐœ๊ฐ€ ์žˆ์„๋•Œ๋กœ ์ชผ๊ฐœ์–ด ์ƒ๊ฐํ•ด๋ณด๋ฉด ๋ฌธ์ œ๊ฐ€ ํ’€๋ฆฐ๋‹ค.

1๊ฐœ ์ผ๋•Œ : 32*1 = 32

2๊ฐœ ์ผ๋•Œ : 30*2 = 60

3๊ฐœ ์ผ๋•Œ : 25 * 3 = 75

4๊ฐœ ์ผ๋•Œ : 12 * 4 = 48

5๊ฐœ ์ผ๋•Œ : 1 *5 = 5

์ฆ‰, ๊ธธ์ด๊ฐ€ 12์™€ 1์ธ ๋กœํ”„๋ฅผ ๋นผ๊ณ  ๋ฌผ๊ฑด์„ ๋“ค์—ˆ์„๋•Œ ๊ฐ€์žฅ ํšจ์œจ์ด ์ข‹๋‹ค.  

(N๋ฒˆ์งธ ๋กœํ”„์˜ ๊ธธ์ด * N) ๋ผ๋Š” ์‹์ด ์„ธ์›Œ์ง„๋‹ค.

์ด๋ ‡๊ฒŒ ์ฝ”๋“œ๋ฅผ ์งœ๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ๋งŒ ํ•ด์ฃผ๋ฉด ๋œ๋‹ค. 

n = int(input())
arr = []
for i in range(n):
    arr.append(int(input()))
    
    
arr.sort(reverse=True)
solution=[]
for i in range(len(arr)):
    solution.append(arr[i] * (i+1))

print(max(solution))

 

Contents

ํฌ์ŠคํŒ… ์ฃผ์†Œ๋ฅผ ๋ณต์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค

์ด ๊ธ€์ด ๋„์›€์ด ๋˜์—ˆ๋‹ค๋ฉด ๊ณต๊ฐ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.