์๊ฐ ์ ํ | ๋ฉ๋ชจ๋ฆฌ ์ ํ | ์ ๋ต ๋น์จ |
1์ด | 128MB | 37.179% |
3366๋ฒ: ์์ด ์ค์ด๊ธฐ
๋ฌธ์ ์์ด a1, ..., an์ด ์ฃผ์ด์ก์ ๋, reduce(i)๋ ai์ ai+1๋ฅผ max(ai, ai+1)๋ก ๋ฐ๊พธ๋ ์ฐ์ฐ์ด๋ค. ์ด ์ฐ์ฐ์ ์ฌ์ฉํ๋ฉด ์์ด์ ๊ธธ์ด๋ 1๋งํผ ์์์ง๊ฒ ๋๋ค. reduce์ฐ์ฐ์ ๋น์ฉ์ max(ai, ai+1)๊ณผ ๊ฐ๋ค. ์ฐ์ฐ์ n-1๏ฟฝ
www.acmicpc.net
๋ฌธ์
์์ด a1, ..., an์ด ์ฃผ์ด์ก์ ๋, reduce(i)๋ ai์ ai+1๋ฅผ max(ai, ai+1)๋ก ๋ฐ๊พธ๋ ์ฐ์ฐ์ด๋ค. ์ด ์ฐ์ฐ์ ์ฌ์ฉํ๋ฉด ์์ด์ ๊ธธ์ด๋ 1๋งํผ ์์์ง๊ฒ ๋๋ค.
reduce์ฐ์ฐ์ ๋น์ฉ์ max(ai, ai+1)๊ณผ ๊ฐ๋ค. ์ฐ์ฐ์ n-1๋ฒ ์ฌ์ฉํ๋ฉด, ์์ด์ ๊ธธ์ด๋ 1์ด ๋๋ค.
reduce์ฐ์ฐ์ n-1๋ฒ ์ฌ์ฉํด์, ์์ด์ ๊ธธ์ด๋ฅผ 1๋ก ๋ง๋ค ๋, ์ฐ์ฐ์ ๋น์ฉ์ ํฉ์ ์ต์๊ฐ์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ฒซ์งธ ์ค์ ์์ด์ ๊ธธ์ด n(1 ≤ n ≤ 1,000,000)์ด ์ฃผ์ด์ง๋ค. ๋ค์ n๊ฐ์ ์ค์๋ ์์ด์ ์์ ai๊ฐ ์์๋๋ก ์ฃผ์ด์ง๋ค. (0 ≤ ai ≤ 1,000,000,000)
ํด๊ฒฐ
key point, stack ํ์ฉ!
- reduce ์ฐ์ฐ์ ๋น์ฉ์ด max(ai, ai+1) ์ด๋ฏ๋ก ์ฐ์ฐ์ ์ต์๊ฐ์ ๊ฐ์ฅ ์์ ai๋ถํฐ ์ฐจ๋ก๋๋ก ์งํํด์ผํ๋ค.
- ์ ๋ ฅ๋ฐ์ ์์ด์ arr[]์ ์ ์ฅํ๊ณ ์คํ์ stack[] ์ผ๋
- stack์ ๊ฐ์ฅ ์์์๋ ๊ฐ๋ณด๋ค arr[i] ๊ฐ์ด ๋ ์์ผ๋ฉด stack์ ์๋ ๋ฐฉ์์ผ๋ก stack[top-1] ์์น์ ์๋ ๊ฐ์ด ์์ด์ i๋ฒ์งธ ๊น์ง์ ์ต์๊ฐ์์ ๋ณด์ฅํ๋ค.
- ๊ทธ ์ธ์ ๊ฒฝ์ฐ์๋ stack[top-1]์ ์์นํ ๊ฐ๊ณผ reduce์ฐ์ฐ์ ํ๊ฒ ๋๋๋ฐ ์ผ์ชฝ์ ์์นํ ์์์ ์ฐ์ฐ ํ ๊ฒ์ธ์ง, ์ค๋ฅธ์ชฝ์ ์์นํ ์์์ ์ฐ์ฐํ ๊ฒ์ธ์ง ์ ํด์ผํ๋ค.
- ์ผ์ชฝ์ ์์นํ ์์์ ์ฐ์ฐ์ ํ ๊ฒฝ์ฐ์๋ stack[top-2]๊ฐ arr[i]๋ณด๋ค ์์ ๊ฒฝ์ฐ์ด๋ค. ๊ทธ๋ฌ๋ฉด stack[top-1]์ ์๋ ๊ฐ๋ณด๋ค stack[top-2]์ ์๋ ๊ฐ์ด ๋น์ฐํ ํฌ๋ฏ๋ก ์ฐ์ฐ์ ๋น์ฉ์ stack[top-2]๊ฐ ๋๋ค. ๊ทธ๋ฆฌ๊ณ max๊ฐ๋ง ๋จ๊ฒ ๋๋ฏ๋ก stack[top-1]์ ์ง์ด๋ค๋ ์๋ฏธ๋ก top--๋ง ํด์ฃผ๋ฉด ๋๋ค.
- ์ค๋ฅธ์ชฝ์ ์์นํ ์์์ ์ฐ์ฐ์ ํ ๊ฒฝ์ฐ์๋ ์คํ์ ์์๋์๋ ์ด๋ ๊ฐ๋ณด๋ค arr[i]๊ฐ์ด ๋ ์์ ๋์ด๋ค. ์ด ๋๋ ์ฐ์ฐ์ ๋น์ฉ์ด arr[i]๊ฐ ๋๊ณ , ์ฐ์ฐ์ ๊ฒฐ๊ณผ๋ max๊ฐ๋ง ๋จ๊ฒ ๋๋ฏ๋ก stack[top-1] ์์น์ arr[i]๊ฐ ์ ์ฅ๋๊ฒ ๋๋ค.
- ๋ฐ๋ณต๋ฌธ์ด ๋ชจ๋ ๋๋๊ณ ๋ง์ง๋ง์ ์คํ์ 2๊ฐ ์ด์์ ๊ฐ์ด ๋จ์์๋ค๋ฉด ๊ฑฐ๊พธ๋ก ๋ฐ๋ณต๋ฌธ์ ๋๋ฉด์, ๋ ๊ฐ์ ์์ ์ค ๋ ์คํ ์๋์ ์๋ ๊ฐ์ ์ฐ์ฐ์ ๋น์ฉ์ผ๋ก ๋ํ๋ค.
- ๋ง์ง๋ง์ผ๋ก ๋ชจ๋ ์ฐ์ฐ์ ๋น์ฉ์ ๋ํ๋ ans๋ณ์๋ฅผ long long ํ์ผ๋ก ์ถ๋ ฅํ๋ค.
- ์์ด์ ์์๋ ์ต๋ 10์ต์ด๊ณ , ์์ด์ ๊ธธ์ด๋ 100๋ง ์ด๋ฏ๋ก ๊ณ์ํด์ ๋ํด๊ฐ๋ฉด int ๋ฒ์๋ฅผ ๋๊ธฐ๋๋ฌธ์ longํ์ผ๋ก ์ ์ธํด์ผํ๋ค.
์ฝ๋
๋ฉ๋ชจ๋ฆฌ | ์๊ฐ |
9796 KB | 212 ms |
'๐ฅ PS(Problem Solving) ๐ฅ > BOJ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[BOJ] #2143 ๋ ๋ฐฐ์ด์ ํฉ (0) | 2020.08.19 |
---|---|
[BOJ] #15831 ์คํ์ ์กฐ์ฝ๋ (0) | 2020.08.19 |
[BOJ] #17090 ๋ฏธ๋ก ํ์ถํ๊ธฐ (0) | 2020.07.16 |
[BOJ] #5670 ํด๋ํฐ ์ํ (0) | 2020.06.12 |
[BOJ] #5052 ์ ํ๋ฒํธ ๋ชฉ๋ก (0) | 2020.06.08 |
๋๊ธ