2022/06/09

โœ๏ธ ์ฝ”ํ…Œ ์ค€๋น„/Implementation

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] 124 ๋‚˜๋ผ์˜ ์ˆซ์ž

๋ฌธ์ œ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - 124 ๋‚˜๋ผ์˜ ์ˆซ์ž programmers.co.kr ํ’€์ด ์–ธ์–ด Python ํ’€์ด ๋ฐฉ๋ฒ• ์šฐ์„  ์ง„๋ฒ• ๋ณ€ํ™˜ ๋ฌธ์ œ์ด๋‹ค. ์ข€ ํŠน์ดํ•˜๊ธด ํ•œ๋ฐ 3๊ฐœ์˜ ์ˆซ์ž๋ฅผ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ 3์ง„๋ฒ•์„ ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค. ํ•˜์ง€๋งŒ 10์ง„์ˆ˜ 3์„ ๋ณ€ํ™˜ํ–ˆ์„ ๋•Œ 10์ด ์•„๋‹ˆ๋ผ 4๊ฐ€ ๋‚˜์˜ค๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ์–ด๋–ป๊ฒŒ ๋ณ€ํ™˜์„ ํ•ด์•ผํ•˜๋Š” ๊ฒƒ์ผ๊นŒ? ์šฐ์„  ๋ณ€ํ™˜ ์ „๊ณผ ๋ณ€ํ™˜ ํ›„๋ฅผ ํ‘œ๋กœ ๋‚˜ํƒ€๋‚ด๋ดค๋‹ค. 10์ง„๋ฒ• 3์ง„๋ฒ• 124 ๋‚˜๋ผ 1 1 1 2 2 2 3 10 4 4 11 11 5 12 12 6 20 14 3์œผ๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ๊ฒฝ์šฐ์—๋งŒ ํŠน์ดํ•œ ๊ฐ’์„ ๊ฐ–๋Š” ๊ฑธ ๋ณผ ์ˆ˜ ์žˆ๋Š”๋ฐ ์—ฌ๊ธฐ์—๋„ ๊ทœ์น™์ด ์žˆ๋‹ค. ๋งจ ์•ž ์ˆซ์ž์—์„œ -1 ์„ ํ•˜๊ณ  ๋’ค์˜ 0์„ 4๋กœ ๋ณ€ํ™˜ํ•ด์ค€๋‹ค๋Š” ์ . ์ฆ‰, 3์œผ๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ๊ฒฝ์šฐ ๋ชซ์—์„œ -1์„ ํ•ด์ค€๋‹ค๋Š” ์˜๋ฏธ์ด๋‹ค. ์ฝ”๋“œ def solu..

โœ๏ธ ์ฝ”ํ…Œ ์ค€๋น„/Binary Search

[LeetCode] 167. Two Sum II - Input Array Is Sorted

์ž…๋ ฅ ์˜ˆ์‹œ ํ’€์ด ์–ธ์–ด Python ํ’€์ด ๋ฐฉ๋ฒ• ์ •๋ ฌ๋œ ๋ฐฐ์—ด์—์„œ target์„ ๋งŒ์กฑํ•˜๋Š” ๋‘ ์›์†Œ์˜ index๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฌธ์ œ์˜€๋‹ค. ์˜ค๋ฆ„์ฐจ์ˆœ์„ ์ •๋ ฌ๋œ ๋ฐฐ์—ด์ด์—ˆ๊ธฐ์— BST ๋ฌธ์ œ๋ผ๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค. ์–ด๋ ต์ง€ ์•Š๊ฒŒ ํ•ด๊ฒฐํ–ˆ๋‹ค. ์ฝ”๋“œ class Solution: def twoSum(self, numbers: List[int], target: int) -> List[int]: start = 0 end = len(numbers) - 1 while start target: end -= 1 elif mid < target: start += 1 else: return [start + 1, end + 1] ๊ฒฐ๊ณผ

kodo_o
'2022/06/09 ๊ธ€ ๋ชฉ๋ก