ধরুন আমাদের তিনটি সংখ্যা n, m এবং z আছে। একটি অফিস প্রতি মিনিটে কল পায়, এবং কিছু ডেলিভারি প্রতি মিনিটে অফিসে আসে। অফিস জেড মিনিটের জন্য খোলা থাকে। ক্লায়েন্ট কল করার সময় আমাদের ন্যূনতম অর্ডারের সংখ্যা গণনা করতে হবে তাই কোনো মুলতুবি অর্ডার নেই। অর্ডার নেওয়ার কথা বিবেচনা করুন এবং ক্লায়েন্টদের সাথে কথা বলতে ঠিক 1 মিনিট সময় লাগে।
সুতরাং, যদি ইনপুট n =1 এর মত হয়; m =2; z =5, তাহলে আউটপুট হবে 2, কারণ আমাদের সংগ্রহকারীর প্রয়োজন যা দ্বিতীয় এবং চতুর্থ মিনিটে আসে।
পদক্ষেপ
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
return z / ((n * m) / (gcd of n and m))
উদাহরণ
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
#include <bits/stdc++.h> using namespace std; int solve(int n, int m, int z){ return z / ((n * m) / __gcd(n, m)); } int main(){ int n = 1; int m = 2; int z = 5; cout << solve(n, m, z) << endl; }
ইনপুট
1, 2, 5
আউটপুট
2