diff --git a/2477-20231205-pass/main.cpp b/2477-20231205-pass/main.cpp new file mode 100644 index 0000000..7a9752c --- /dev/null +++ b/2477-20231205-pass/main.cpp @@ -0,0 +1,55 @@ +#include +using namespace std; +class Solution{ +public: + int people_counter( + vector > nodes, int k, int prev, long long & ans, int seats + ){ + int people = 1; + for(int node : nodes[k]){ + if(node == prev){continue;} + people+=people_counter(nodes,node,k, ans, seats); + } + if(k > 0) + ans += (people+seats - 1)/seats; + return people; + } + long long minimumFuelCost(vector >& roads, int seats){ + vector >nodes(roads.size() + 1); + for(vector edge: roads){ + const int u = edge[0], v = edge[1]; + nodes[u].push_back(v); + nodes[v].push_back(u); + } + long long ans = 0; + people_counter(nodes,0, -1, ans, seats); + cout< rd1 = {3,1}; + vector rd2 = {3,2}; + vector rd3 = {1,0}; + vector rd4 = {0,4}; + vector rd5 = {0,5}; + vector rd6 = {4,6}; + vector >ex1 = {rd1,rd2,rd3,rd4,rd5,rd6}; + sol.minimumFuelCost(ex1, 2); + + rd1[0]=0; rd1[1] = 1; + rd2[0]=0; rd2[1] = 2; + rd3[0]=0; rd3[1] = 3; + vector >ex2 = {rd1,rd2,rd3}; + + sol.minimumFuelCost(ex2, 5); + + vector >ex3 ; + sol.minimumFuelCost(ex3,1); + + + + +} \ No newline at end of file