๐ ๋ฌธ์ : 724. Find Pivot Index
ํ๋ซํผ: LeetCode
๋ฒํธ: 724
์ ๋ชฉ: Find Pivot Index
๋งํฌ: https://leetcode.com/problems/find-pivot-index/description/
๋์ด๋: Easy
๐ ๋ฌธ์ ์ค๋ช
์ฃผ์ด์ง ์ ์ ๋ฐฐ์ด nums์์ ํผ๋ฒ ์ธ๋ฑ์ค(pivot index)๋ฅผ ์ฐพ๋ ๋ฌธ์ ์
๋๋ค.
ํผ๋ฒ ์ธ๋ฑ์ค๋, ํด๋น ์ธ๋ฑ์ค๋ฅผ ๊ธฐ์ค์ผ๋ก ์ผ์ชฝ์ ์๋ ๋ชจ๋ ์์๋ค์ ํฉ๊ณผ ์ค๋ฅธ์ชฝ์ ์๋ ๋ชจ๋ ์์๋ค์ ํฉ์ด ์ ํํ ๊ฐ์ ์ง์ ์ ์ธ๋ฑ์ค๋ฅผ ๋งํฉ๋๋ค.
๋ง์ฝ ํผ๋ฒ ์ธ๋ฑ์ค๊ฐ ์ฌ๋ฌ ๊ฐ ์๋ค๋ฉด, ๊ฐ์ฅ ์ผ์ชฝ์ ์๋ ์ธ๋ฑ์ค๋ฅผ ๋ฐํํด์ผ ํฉ๋๋ค. ํผ๋ฒ ์ธ๋ฑ์ค๋ฅผ ์ฐพ์ ์ ์๋ค๋ฉด -1์ ๋ฐํํฉ๋๋ค.
๋ฐฐ์ด์ ์์ชฝ ๋์์๋ ๋ค์๊ณผ ๊ฐ์ด ๊ฐ์ฃผํฉ๋๋ค:
๊ฐ์ฅ ์ผ์ชฝ ์ธ๋ฑ์ค(0)์ ์ผ์ชฝ ํฉ์ 0์ ๋๋ค.
๊ฐ์ฅ ์ค๋ฅธ์ชฝ ์ธ๋ฑ์ค(n-1)์ ์ค๋ฅธ์ชฝ ํฉ์ 0์ ๋๋ค.
์์ 1:
์ ๋ ฅ:
nums = [1, 7, 3, 6, 5, 6]์ถ๋ ฅ:
3์ค๋ช : ์ธ๋ฑ์ค 3 (๊ฐ 6)์ ๊ธฐ์ค์ผ๋ก ์ผ์ชฝ ํฉ(1 + 7 + 3 = 11)๊ณผ ์ค๋ฅธ์ชฝ ํฉ(5 + 6 = 11)์ด ๊ฐ์ต๋๋ค.
์์ 2:
์ ๋ ฅ:
nums = [1, 2, 3]์ถ๋ ฅ:
-1์ค๋ช : ํผ๋ฒ ์ธ๋ฑ์ค๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
์์ 3:
์ ๋ ฅ:
nums = [2, 1, -1]์ถ๋ ฅ:
0์ค๋ช : ์ธ๋ฑ์ค 0์ ๊ธฐ์ค์ผ๋ก ์ผ์ชฝ ํฉ์ 0, ์ค๋ฅธ์ชฝ ํฉ์ 1 + (-1) = 0์ ๋๋ค.
๐ค ํ์ด ์์ด๋์ด: ์ผ์ชฝ ํฉ๊ณผ ์ค๋ฅธ์ชฝ ํฉ ์ถ์ ํ๋ฉฐ ๋น๊ต
์ด ๋ฌธ์ ๋ ๋ฐฐ์ด์ ์ํํ๋ฉด์ ๊ฐ ์ธ๋ฑ์ค๊ฐ ํผ๋ฒ ์ธ๋ฑ์ค์ ์กฐ๊ฑด์ ๋ง์กฑํ๋์ง ํ์ธํ๋ ๋ฐฉ์์ผ๋ก ์ ๊ทผํ ์ ์์ต๋๋ค. ์ ๊ฐ ์ฌ์ฉํ ํต์ฌ ์์ด๋์ด๋ ํ์ฌ ์ธ๋ฑ์ค๋ฅผ ๊ธฐ์ค์ผ๋ก ์ผ์ชฝ ์์๋ค์ ํฉ(left_sum)๊ณผ ์ค๋ฅธ์ชฝ ์์๋ค์ ํฉ(right_sum)์ ๊ณ์ํด์ ์
๋ฐ์ดํธํ๊ณ ๋น๊ตํ๋ ๊ฒ์
๋๋ค.
์ด๊ธฐ๊ฐ ์ค์ :
left_sum: ์ธ๋ฑ์ค 0์ ์ผ์ชฝ์๋ ์์๊ฐ ์์ผ๋ฏ๋ก 0์ผ๋ก ์์ํฉ๋๋ค.right_sum: ์ธ๋ฑ์ค 0์ ์ค๋ฅธ์ชฝ์ ์๋ ๋ชจ๋ ์์๋ค์ ํฉ์ผ๋ก ์์ํฉ๋๋ค. (์ฆ,nums[1]๋ถํฐ ๋๊น์ง์ ํฉ)
์ฒซ ๋ฒ์งธ ์ธ๋ฑ์ค(0) ํ์ธ: ๊ณ์ฐ๋ ์ด๊ธฐ
left_sum๊ณผright_sum์ด ๊ฐ์์ง ํ์ธํฉ๋๋ค. ๋ง์ฝ ๊ฐ๋ค๋ฉด ์ธ๋ฑ์ค 0์ด ํผ๋ฒ์ด๋ฏ๋ก ๋ฐ๋ก 0์ ๋ฐํํฉ๋๋ค.์ธ๋ฑ์ค ์ด๋ ๋ฐ ํฉ ์ ๋ฐ์ดํธ:
while๋ฃจํ๋ฅผ ์ฌ์ฉํ์ฌ ์ธ๋ฑ์คi๋ฅผ 0๋ถํฐn-2๊น์ง ์ฆ๊ฐ์ํต๋๋ค. (์ฌ๊ธฐ์n์ ๋ฐฐ์ด์ ๊ธธ์ด์ ๋๋ค.)๋ฃจํ์ ๊ฐ ๋จ๊ณ์์๋ ๋ค์ ์ธ๋ฑ์ค(
i+1)๊ฐ ํผ๋ฒ์ด ๋ ๊ฐ๋ฅ์ฑ์ ...


