Chúng tôi được cấp N rupee. Mục tiêu là mua lượng nước tối đa có thể với số tiền mà thùng nước đóng chai như sau -
- Chai nhựa:Đồng Rupee cho 1 lít
- Chai thủy tinh:B Rupee cho 1 lít
- Chai thủy tinh:B Rupee cho 1 lít
Bây giờ giá gốc của chai thủy tinh trở thành B-E rupee. Sau khi trở về.
Nếu giá thành của chai nhựa vẫn nhỏ hơn B-E, thì bạn chỉ nên mua chai nhựa. Nếu không, hãy mua chai N-E / B-Eglass và dành phần còn lại cho chai nhựa.
Đầu vào
N = 6, A = 5, B = 4, E = 3;
Đầu ra
Maximum litres of water: 3
Đầu vào
N = 10, A = 5, B = 10, E = 3;
Đầu ra
Maximum litres of water: 2
Giải thích - B-E =7, 7> A n / a =10/5 =Có thể mua 2 chai nhựa
Phương pháp tiếp cận được sử dụng trong chương trình dưới đây như sau
-
Số nguyên tiền, chai, gbottle và gempty được sử dụng cho tỷ giá và số tiền có được.
-
Hàm maxWater (int mny, int pb, int gb, int ge) nhận tất cả các giá trị làm tham số và in ra lượng nước có thể mua.
-
Lốp thay đổi được sử dụng để lưu trữ lượng nước tính theo lít.
-
Chúng tôi chuyển pb dưới dạng giá trị mới của chai thủy tinh (giá trị ban đầu-giá trị trả lại).
-
Nếu giá trị gb được chuyển nhỏ hơn giá trị pb thì hãy mua chai thủy tinh (mny-ge) / gb.
-
Trừ số tiền này để tính số tiền còn lại, mny- =ltrs * gb
-
Hiện có thể mua chai nhựa là mny / pb.
-
Nếu giá trị pb đã qua lớn hơn giá trị pb thì chỉ mua chai nhựa mny / pb.
-
In kết quả trong cả hai trường hợp là không. của chai là không. lít nước. Mỗi chai có 1 lít.
Ví dụ
// CPP implementation of the above approach #include<bits/stdc++.h> using namespace std; void maxWater(int mny,int pb,int gb,int ge){ int litrs; // if buying glass bottles is profitable if (gb < pb){ // no. of glass bottles int tmp=mny-ge/gb; litrs=tmp>0?tmp:0; mny-=litrs*gb; // no. of plastic bottles litrs+=mny/pb; cout<<"Maximum Liters of water : "<<litrs<<endl; } // only plastic bottles else cout<<"Maximum Liters of water only Plastic bottles: "<<(mny /pb)<<endl; } int main(){ int money = 20, pbottle=5, gbottle=10, gempty = 8; gbottle=gbottle-gempty; //new cost of glass botlles maxWater( money,pbottle,gbottle,gempty ); }
Đầu ra
Maximum Liters of water: 14