Algorithm

[๋ฐฑ์ค€] 2491. ์ˆ˜์—ด python

๐Ÿณ ๋งํฌ

๋ฐฑ์ค€ ์ˆ˜์—ด

๐Ÿ• ๋ฌธ์ œ

0์—์„œ๋ถ€ํ„ฐ 9๊นŒ์ง€์˜ ์ˆซ์ž๋กœ ์ด๋ฃจ์–ด์ง„ N๊ฐœ์˜ ์ˆซ์ž๊ฐ€ ๋‚˜์—ด๋œ ์ˆ˜์—ด์ด ์žˆ๋‹ค. ๊ทธ ์ˆ˜์—ด ์•ˆ์—์„œ ์—ฐ์†ํ•ด์„œ ์ปค์ง€๊ฑฐ๋‚˜(๊ฐ™์€ ๊ฒƒ ํฌํ•จ), ํ˜น์€ ์—ฐ์†ํ•ด์„œ ์ž‘์•„์ง€๋Š”(๊ฐ™์€ ๊ฒƒ ํฌํ•จ) ์ˆ˜์—ด ์ค‘ ๊ฐ€์žฅ ๊ธธ์ด๊ฐ€ ๊ธด ๊ฒƒ์„ ์ฐพ์•„๋‚ด์–ด ๊ทธ ๊ธธ์ด๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๋ผ.

์˜ˆ๋ฅผ ๋“ค์–ด ์ˆ˜์—ด 1 2 2 4 4 5 7 7 2 ์˜ ๊ฒฝ์šฐ์—๋Š” 1โ‰ค2โ‰ค2โ‰ค4โ‰ค4โ‰ค5โ‰ค7โ‰ค7 ์ด ๊ฐ€์žฅ ๊ธด ๊ตฌ๊ฐ„์ด ๋˜๋ฏ€๋กœ ๊ทธ ๊ธธ์ด 8์„ ์ถœ๋ ฅํ•œ๋‹ค. ์ˆ˜์—ด 4 1 3 3 2 2 9 2 3 ์˜ ๊ฒฝ์šฐ์—๋Š” 3โ‰ฅ3โ‰ฅ2โ‰ฅ2 ๊ฐ€ ๊ฐ€์žฅ ๊ธด ๊ตฌ๊ฐ„์ด ๋˜๋ฏ€๋กœ ๊ทธ ๊ธธ์ด 4๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. ๋˜ 1 5 3 6 4 7 1 3 2 9 5 ์˜ ๊ฒฝ์šฐ์—๋Š” ์—ฐ์†ํ•ด์„œ ์ปค์ง€๊ฑฐ๋‚˜ ์ž‘์•„์ง€๋Š” ์ˆ˜์—ด์˜ ๊ธธ์ด๊ฐ€ 3 ์ด์ƒ์ธ ๊ฒฝ์šฐ๊ฐ€ ์—†์œผ๋ฏ€๋กœ 2๋ฅผ ์ถœ๋ ฅํ•˜์—ฌ์•ผ ํ•œ๋‹ค.

๐Ÿพ ํ’€์ด ๋ฐฉ๋ฒ•

if๋ฌธ์„ ์ด์šฉํ•œ ๋‹จ์ˆœ ๋น„๊ต๋กœ ํ’€์ดํ•  ์ˆ˜ ์žˆ๋‹ค.

์†Œ์Šค์ฝ”๋“œ

import sys
n = int(sys.stdin.readline().strip())
seq = list(map(int,sys.stdin.readline().split()))


result = 1
increase = 1
decrease = 1
for i in range(1,n):
    if seq[i-1] <= seq[i]:
        increase += 1
        result = increase if increase > result else result
    else:
        increase = 1

for i in range(1, n):
    if seq[i - 1] >= seq[i]:
        decrease += 1
        result = decrease if decrease > result else result
    else:
        decrease = 1

print(result)