-
파이썬 알고리즘 - 주식 가격, 같은 알파벳 묶기일반 프로그래밍/알고리즘 2022. 5. 8. 20:21
문제 17 : 배열로 매일의 주식 가격이 주어지고, 한번만 사고팔수 있다고 할 때, 가장 큰 이익을 구하라.
나의 답
def maxProfit(prices): list = [] for i in range(len(prices)): for j in range(i+1,len(prices)) : list.append(prices[j]-prices[i]) return 0 if max(list) < 0 else max(list)
j의 값을 i+1로 설정하여, 뒤에 날에 사서 앞의 날 가격에 파는 결과를 제외 하였고, return에 조건을 걸어 이득이 마이너스일때는 0을 반환하게 하였다.
문제 18 : input이 주어졌을 때, 같은 알파벳으로 이루어진 단어끼리 묶어라.
모범 답안
def groupAnagrams(strs): d = {} for w in sorted(strs): key = tuple(sorted(w)) d[key] = d.get(key, []) + [w] print(d) return d.values()
'일반 프로그래밍 > 알고리즘' 카테고리의 다른 글
선택 정렬 파이썬으로 구현하기 (0) 2022.05.15 파이썬 알고리즘 - 연속된 값의 가장 큰 합, 이진 탐색 (0) 2022.05.08 파이썬 알고리즘 - 재귀, binary gap (0) 2022.05.08 파이썬 알고리즘 - 합이 가장 적은경로 찾기, 0 배열끝으로 이동시키기 (0) 2022.05.01 파이썬 알고리즘 - 복소수 곱 구하기, 배열 뒤집기 (0) 2022.04.26