Computer >> Máy Tính >  >> Lập trình >> C ++

Chương trình C ++ để đếm số lượng xu tối thiểu cần thiết để nhận được tổng k

Giả sử chúng ta có hai số n và k. Chúng tôi có số lượng không giới hạn số xu có giá trị từ 1 đến n. Chúng ta muốn lấy một số giá trị có tổng là k. Chúng ta có thể chọn nhiều đồng tiền có giá trị giống nhau để nhận được tổng k. Chúng tôi phải đếm số xu tối thiểu cần thiết để nhận được tổng k.

Vì vậy, nếu đầu vào là n =6; k =16, thì đầu ra sẽ là 3, bởi vì (2 * 6) + 4.

Các bước

Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -

c := (n + k - 1) / n
return c

Ví dụ

Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -

#include<bits/stdc++.h>
using namespace std;

int solve(int n, int k){
   int c=(n+k-1)/n;
   return c;
}
int main(){
   int n = 6;
   int k = 16;
   cout << solve(n, k) << endl;
}

Đầu vào

6, 16

Đầu ra

3