๐Ÿงฉ Problem Solving/[SW Expert Academy]

[SWEA D3] 1206 View (python ํŒŒ์ด์ฌ)

์ œ๋ด‰์•„ 2023. 7. 8. 18:52
 

SW Expert Academy

SW ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์—ญ๋Ÿ‰ ๊ฐ•ํ™”์— ๋„์›€์ด ๋˜๋Š” ๋‹ค์–‘ํ•œ ํ•™์Šต ์ปจํ…์ธ ๋ฅผ ํ™•์ธํ•˜์„ธ์š”!

swexpertacademy.com


์ฒ˜์Œ ํ’€์–ด๋ณธ SW Expert Academy. ์•„์ง ํ•œ ๋ฌธ์ œ๋งŒ ํ’€์–ด๋ด์„œ ์ž˜ ๋ชจ๋ฅด๊ฒ ๋‹ค. ๋ช‡ ๋ฌธ์ œ ํ’€์–ด๋ณด๋ฉด ๋Š๋‚Œ์„ ์•Œ ๊ฑฐ ๊ฐ™๋‹ค.

๋ฌธ์ œ ํŽ˜์ด์ง€์— input.txt๋ฅผ ๋ณด๊ณ  ํŒŒ์ผ ์ž…์ถœ๋ ฅ์„ ํ•ด์•ผ ํ•˜๋‚˜ ํ–ˆ๋Š”๋ฐ, ๊ทธ๋ƒฅ ํ‰์†Œ ๋ฌธ์ œ ํ’€๋“ฏ ํ’€๋ฉด ๋œ๋‹ค.

 

๊ทผ๋ฐ ๊ถ๊ธˆํ•œ ๊ฒŒ input์ด ์ „๋ถ€ ์ฃผ์–ด์ง€๋ฉด, ํ•˜๋“œ์ฝ”๋”ฉ์œผ๋กœ ์ œ์ถœํ•ด๋„ ์ •๋‹ต์ธ๊ฐ€? ๋ชจ๋ฅด๊ฒ ๋‹ค.

 

๊ทธ๋ฆฌ๊ณ  ์ด ๋ฌธ์ œ๋งŒ ๊ทธ๋Ÿฐ์ง€ ๋ชจ๋ฅด๊ฒ ๋Š”๋ฐ, ์ถœ๋ ฅ์ด ํŠน์ดํ–ˆ๋‹ค. #1 1231, #2 5343, #3 1233... ์ด๋Ÿฐ ์‹์œผ๋กœ

์ œ์ถœ ํ™˜๊ฒฝ๋„ ์ฒ˜์Œ ๋ด์„œ ์‚ด์ง ๋‡Œ๊ฐ€ ์ •์ง€ํ–ˆ๋Š”๋ฐ, ๊ทธ๋ƒฅ ์›๋ž˜๋Œ€๋กœ ํ•˜๋ฉด ๋œ๋‹ค.


์•„์ด๋””์–ด

์ฝ”๋“œ ๊ธธ์ด๋ฅผ ๋ณด๋ฉด ์•Œ๊ฒ ์ง€๋งŒ ๋งค์šฐ ๊ฐ„๋‹จํ•˜๋‹ค. ์˜คํžˆ๋ ค ๋„ˆ๋ฌด ์‰ฌ์›Œ์„œ ์˜์‹ฌ์„ ๋งŽ์ด ํ•  ์ˆ˜๋„ ์žˆ๋‹ค.

์•„๋ฌด๋ฆฌ ์ƒ๊ฐํ•ด ๋ด๋„ tc 10๊ฐœ๊ฐ€ 30์ดˆ๋ฅผ ๋„˜์„ ๊ฑฐ ๊ฐ™์ง„ ์•Š์•˜๋‹ค.

 

๊ทธ๋ƒฅ ๊ฐ ๊ฑด๋ฌผ์„ ๊ธฐ์ค€์œผ๋กœ +-2 ๋ฒ”์œ„์— ์žˆ๋Š” ๊ฑด๋ฌผ๋“ค ์ค‘ max๊ฐ’์„ ๊ณ„์‚ฐํ•ด์„œ ๋นผ์ฃผ๋ฉด ๋œ๋‹ค.

์Œ์ˆ˜๋Š” 0์œผ๋กœ ๋ฐ”๊ฟ”์ค€๋‹ค.


์ „์ฒด ์ฝ”๋“œ

for t in range(1, 11):
    N = int(input())

    buildings = [int(x) for x in input().split()]

    Sum = 0
    for i in range(2, N - 2):
        ans = buildings[i] - max(buildings[i - 2:i] + buildings[i + 1: i + 3])
        if(ans < 0):
            ans = 0
        Sum += ans

    print('#', end = '')
    print(t, Sum)