কম্পিউটার

C++ ব্যবহার করে সমস্ত প্রশ্ন বিতরণের জন্য ন্যূনতম সংখ্যক মেইলের প্রয়োজন।


সমস্যা বিবৃতি

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

  1. C++ ব্যবহার করে পঞ্চভুজ পিরামিডাল নম্বর খুঁজুন

  2. C++ ব্যবহার করে একটি স্ট্রিং এর সাবস্ট্রিং এর সংখ্যা খুঁজুন

  3. C++ ব্যবহার করে স্টপিং স্টেশনের সংখ্যা খুঁজুন

  4. C++ এ প্রতিপক্ষকে ধরার জন্য প্রয়োজনীয় ন্যূনতম সংখ্যক ধাপ খুঁজে বের করার প্রোগ্রাম