১ থেকে n মানের কয়েন Анলিমিটেড আছে। যোগফল k করতে ন্যূনতম কতটি কয়েন লাগবে? একই মানের কয়েন একাধিক বার নেওয়া যায়।
সমাধানের ধাপসমূহ
সবচেয়ে বড় মান n ব্যবহার করুন। ন্যূনতম কয়েন = ceil(k/n) = (n + k - 1) / 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, k = 16;
cout << solve(n, k) << endl;
return 0;
}
ইনপুট
6, 16
আউটপুট
3
ব্যাখ্যা
n=6, k=16। ২টি ৬ (১২) + ১টি ৪ = ৩টি কয়েন।