Loading content...
Created On: December 15, 2023
Problem Statement (Coding Ninjas)
class Solution {
public:
int maxProfit(vector<int>& prices) {
int min_p = INT_MAX, max_pf = 0, curr_pf = 0;
for(int day = 0; day < prices.size(); day++){
//finding min price so far
if(prices[day] < min_p)
min_p = prices[day];
//if curr_pf == prices[day] - min_p > max_pf
//update max_pf
curr_pf = prices[day] - min_p;
if(curr_pf > max_pf){
max_pf = curr_pf;
}
}
return max_pf;
}
};class Solution {
public:
int maxProfit(vector<int>& prices) {
int buy_day = 0;
int curr_pf = 0, max_pf = 0;
for(int curr_day = 0; curr_day < prices.size(); curr_day++){
if(prices[curr_day] < prices[buy_day])
buy_day = curr_day;
curr_pf = prices[curr_day] - prices[buy_day];
if(curr_pf > max_pf)
max_pf = curr_pf;
}
return max_pf;
}
};