Skip to content

Commit 8faed68

Browse files
authored
Merge pull request #2390 from ohkingtaek/main
[ohkingtaek] WEEK 01 solutions
2 parents b6d2de6 + 6c2971e commit 8faed68

File tree

4 files changed

+50
-0
lines changed

4 files changed

+50
-0
lines changed
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
class Solution:
2+
def maxProfit(self, prices: List[int]) -> int:
3+
"""
4+
์ง€๊ธˆ๊นŒ์ง€ ๋ณธ ๊ฐ€๊ฒฉ ์ค‘ ๊ฐ€์žฅ ์ž‘์€ ๊ฐ’์„ ๊ณ„์† ์ €์žฅํ•˜๊ณ 
5+
ํ˜„์žฌ ๊ฐ€๊ฒฉ์—์„œ ๊ทธ ์ตœ์†Œ๊ฐ’์„ ๋บ€ ๊ฐ’์œผ๋กœ ์ตœ๋Œ€ ์ด์ต์„ ๊ฐฑ์‹ ํ•ฉ๋‹ˆ๋‹ค.
6+
ํ•œ ๋ฒˆ ์ˆœํšŒํ•˜๋ฉด์„œ ์ตœ๋Œ€ profit์„ ์ฐพ๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค
7+
"""
8+
min_price = float('inf')
9+
max_profit = 0
10+
11+
for price in prices:
12+
min_price = min(min_price, price)
13+
max_profit = max(max_profit, price - min_price)
14+
15+
return max_profit
16+
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
class Solution:
2+
def containsDuplicate(self, nums: List[int]) -> bool:
3+
"""
4+
nums๋ฅผ set์œผ๋กœ ๋ฐ”๊ฟจ์„ ๋•Œ ๊ธธ์ด๊ฐ€ ์ค„์–ด๋“ค๋ฉด ๋ฐฐ์—ด ์•ˆ์— ์ค‘๋ณต ๊ฐ’์ด ์žˆ๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค.
5+
"""
6+
if len(nums) != len(set(nums)):
7+
return True
8+
else:
9+
return False
10+
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
class Solution:
2+
def maxSubArray(self, nums: List[int]) -> int:
3+
"""
4+
ํ˜„์žฌ๊นŒ์ง€ ์ด์–ด์„œ ๋งŒ๋“  ๋ถ€๋ถ„ํ•ฉ์ด ์Œ์ˆ˜๋ฉด ๋ฒ„๋ฆฌ๊ณ  ๋‹ค์‹œ ์‹œ์ž‘ํ•˜์—ฌ ๊ฐฑ์‹  ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
5+
"""
6+
now_sum = nums[0]
7+
max_sum = nums[0]
8+
9+
for num in nums[1:]:
10+
now_sum = max(num, now_sum + num)
11+
max_sum = max(max_sum, now_sum)
12+
return max_sum
13+

โ€Žtwo-sum/ohkingtaek.pyโ€Ž

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
class Solution:
2+
def twoSum(self, nums: List[int], target: int) -> List[int]:
3+
"""
4+
nums๋ฅผ ์•ž์—์„œ๋ถ€ํ„ฐ ํ•˜๋‚˜์”ฉ ๋ณด๋ฉด์„œ ํ˜„์žฌ ๊ฐ’(nums[i])๊ณผ ๋”ํ•ด์„œ target์ด ๋˜๋Š” ๊ฐ’์ด ๋’ค์ชฝ ๋ฐฐ์—ด์— ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
5+
์žˆ์œผ๋ฉด ๊ทธ ๊ฐ’์˜ index๋ฅผ ์ฐพ์•„์„œ ๊ฐ™์ด ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
6+
"""
7+
dp = []
8+
for i in range(len(nums)):
9+
if (target - nums[i]) in nums[i+1:]:
10+
return [i, nums[i+1:].index(target - nums[i]) + i+1]
11+

0 commit comments

Comments
ย (0)