From 373ec9d6ef8d2ed0a9429a3d04285a11f67ed48e Mon Sep 17 00:00:00 2001 From: chayan das <110921638+Chayandas07@users.noreply.github.com> Date: Tue, 31 Dec 2024 23:25:49 +0530 Subject: [PATCH] Create 983. Minimum Cost For Tickets --- 983. Minimum Cost For Tickets | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 983. Minimum Cost For Tickets diff --git a/983. Minimum Cost For Tickets b/983. Minimum Cost For Tickets new file mode 100644 index 0000000..31ea5ba --- /dev/null +++ b/983. Minimum Cost For Tickets @@ -0,0 +1,24 @@ +class Solution { +public: + int solve(vector& days, int n, vector& costs,vector&dp) { + if (n >= 366) { + return 0; + } + if(dp[n]!=-1)return dp[n]; + if (days[n] == 1) { + return dp[n]=min(costs[0] + solve(days, n + 1, costs,dp), + min(costs[1] + solve(days, n + 7, costs,dp), + costs[2] + solve(days, n + 30, costs,dp))); + } else { + return dp[n]=solve(days, n + 1, costs,dp); + } + } + int mincostTickets(vector& days, vector& costs) { + vector d(366, 0); + for (int i = 0; i < days.size(); i++) { + d[days[i]] = 1; + } + vectordp(366,-1); + return solve(d, 1, costs,dp); + } +};