সমস্যা বিবৃতি
একটি পরীক্ষায় N প্রশ্ন দেওয়া হয়েছে এবং ক্লাসে K ছাত্রদের। K ছাত্রদের ব্যাচের মধ্যে, N ছাত্ররা প্রতিটি ঠিক একটি করে প্রশ্ন মুখস্থ করেছিল। একটি মেইলে সর্বাধিক X প্রশ্ন থাকতে পারে৷
৷প্রয়োজনীয় ন্যূনতম সংখ্যক মেল খুঁজুন যাতে পুরো ক্লাস সমস্ত প্রশ্ন সম্পর্কে জানতে পারে
যদি N =3, K =3, X =1 হয় তবে একজনকে 6 টি মেইল পাঠাতে হবে −
- শিক্ষার্থী 1 ছাত্র 2 এবং ছাত্র 3 (2 মেইল) কে তার প্রশ্ন পাঠায়,
- তাই ছাত্র 2 এবং ছাত্র 3 তাই মোট মেইল =2 * 3 =6
অ্যালগরিদম
নিচের সূত্র −
ব্যবহার করে চূড়ান্ত উত্তর গণনা করা যেতে পারেceil(N/X) * (K-N) + (( ceil((N-1)/X)) * (N-1)) + (N-1)
উদাহরণ
#include <iostream> #include <cmath> using namespace std; int minMailsToBeSent(int n, int k, int x){ int m = (n - 1) + ceil((n - 1) * 1.0 / x) * (n - 1) + ceil(n * 1.0 / x) * (k- n); return m; } int main(){ int questions = 3; int students = 3; int X = 1; cout << "No of mails to be sent: " << minMailsToBeSent(questions, students, X) << endl; return 0; }
আউটপুট
আপনি যখন উপরের প্রোগ্রামটি কম্পাইল এবং এক্সিকিউট করবেন। এটি নিম্নলিখিত আউটপুট −
তৈরি করেNo of mails to be sent: 6