সমস্যা বিবৃতি
একটি পরীক্ষায় 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