मान लीजिए हमारे पास दो पूर्णांक tomatoSlices और cheeseSlices हैं। ये विभिन्न बर्गर की सामग्री हैं:
- जंबो बर्गर: 4 टमाटर स्लाइस और 1 चीज़ स्लाइस।
- स्मॉल बर्गर: 2 टमाटर स्लाइस और 1 चीज़ स्लाइस।
हमें [total_jumbo, total_small] ढूंढना है ताकि बचे हुए टमाटर स्लाइस की संख्या 0 के बराबर हो और बचे हुए चीज़ स्लाइस की संख्या भी 0 के बराबर हो। यदि शेष टमाटर और चीज़ स्लाइस को 0 बनाना संभव नहीं है तो खाली सरणी [] लौटाएं। उदाहरण के लिए, यदि इनपुट tomatoSlices = 16 और cheeseSlices = 7 है, तो आउटपुट [1, 6] होगा। इसका मतलब है, 1 जंबो बर्गर और 6 स्मॉल बर्गर बनाने के लिए हमें 4*1 + 2*6 = 16 टमाटर स्लाइस और 1 + 6 = 7 चीज़ स्लाइस चाहिए।
इसे हल करने के लिए, हम निम्नलिखित चरणों का पालन करेंगे:
ansनामक एक सरणी बनाएं- यदि टमाटर विषम है या चीज़ > टमाटर/2 या टमाटर > 4*चीज़, तो
ansलौटाएं x := (4 * cheese - tomato) / 2y := (tomato - (2*x)) / 4yफिरxको सरणीansमें डालेंansलौटाएं
उदाहरण
#include <bits/stdc++.h> using namespace std; void print_vector(vector<auto> v){ cout << "["; for(int i = 0; i<v.size(); i++){ cout << v[i] << ", "; } cout << "]"<<endl; } class Solution { public: vector<int> numOfBurgers(int t, int c) { vector <int> ans; if(t % 2 != 0 || c > t/2 || t > c*4)return ans; int x = (4 * c - t) / 2; int y = ( t - (2 * x) )/ 4; ans.push_back(y); ans.push_back(x); return ans; } }; main(){ Solution ob; print_vector(ob.numOfBurgers(16,7)); }इनपुट
16 7
आउटपुट
[1, 6, ]