https://leetcode.com/problems/best-time-to-buy-and-sell-stock/description/
주식 가격이 주어진다.
이때 어느 하루에 사고, 어느 다른 하루에 판다면, 이 수익의 최대값을 구하라.
파는 날은 반드시 사는 날과 다른 이후의 날이어야 한다.
사는 날은 최대한 싸면 큰 차익의 결과가 기대될 것이다.
따라서 최소값에서 사고, 알수 없는 모든 값들에 대해 차(수익)의 최대값을 구한다.
코드
더보기
int maxProfit(vector<int>& prices)
{
if (prices.size() <= 1)
return 0;
int maxProfit = 0;
int minStock = prices[0];
for (int q = 1; q < prices.size(); ++q)
{
maxProfit = max(maxProfit, prices[q] - minStock);
minStock = min(minStock, prices[q]);
}
return maxProfit;
}
결과
'Leetcode > NeetCode' 카테고리의 다른 글
[SlidingWindow][Medium] 424. Longest Repeating Character Replacement (0) | 2024.07.10 |
---|---|
[SlidingWindow][Medium] 3. Longest Substring Without Repeating Characters (0) | 2024.07.09 |
[TwoPointers][Medium] 11. Container With Most Water (0) | 2024.07.09 |
[TwoPointers][Medium] 15. 3Sum (0) | 2024.07.09 |
[TwoPointers][Medium] 167. Two Sum II - Input Array Is Sorted (0) | 2024.07.09 |