Giả sử chúng ta có hai số nguyên cà chua và phô mai. Đây là thành phần của các loại bánh mì kẹp thịt khác nhau -
- Jumbo Burger:4 lát cà chua và 1 lát pho mát.
- Bánh mì kẹp thịt nhỏ:2 lát cà chua và 1 lát pho mát.
Ta phải tìm [total_jumbo, total_small] sao cho số lát cà chua còn lại bằng 0 và số miếng phô mai còn lại cũng bằng 0. []. Vì vậy, nếu đầu vào là coffeeSlices =16 và flagseSlices =7, thì đầu ra sẽ là [1, 6]. Vì vậy, điều này cho thấy, để làm một bánh mì kẹp thịt jumbo và 6 bánh mì kẹp thịt nhỏ, chúng ta cần 4 * 1 + 2 * 6 =16 cà chua và 1 + 6 =7 miếng phô mai.
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
- tạo một mảng được gọi là ans
- nếu cà chua lẻ hoặc phô mai> cà chua / 2 hoặc cà chua> 4 * phô mai, thì trả về ans
- x:=(4 * pho mát - cà chua) / 2
- y:=(cà chua - (2 * x)) / 4
- chèn y rồi x vào mảng ans
- trả lại ans
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -
Ví dụ
#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)); }
Đầu vào
16 7
Đầu ra
[1, 6, ]