কম্পিউটার

স্কোর টেবিল থেকে শিক্ষার্থীর র‌্যাঙ্ক খুঁজতে C++ কোড


ধরুন আমাদের n x 4 আকারের একটি 2d ​​অ্যারে আছে। বিবেচনা করুন n ছাত্র আছে এবং তাদের আইডি 0 থেকে n-1 থেকে শুরু হচ্ছে। তাদের প্রত্যেকের ইংরেজি, ভূগোল, গণিত এবং ইতিহাসের চারটি স্কোর রয়েছে। সারণীতে, শিক্ষার্থীদের স্কোরের যোগফল কমিয়ে বাছাই করা হবে। যদি দুই বা তার বেশি ছাত্রের সমষ্টি একই থাকে, তাহলে এই ছাত্রদের তাদের আইডি বাড়িয়ে সাজানো হবে। আমাদের সেই ছাত্রের আইডি খুঁজে বের করতে হবে যার আইডি 0।

সুতরাং, যদি ইনপুট মত হয়

100 98 100 100
100 100 100 100
90 99 90 100
100 98 60 99

তাহলে আউটপুট হবে 2

পদক্ষেপ

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

n := size of table
r := 1
p := table[0, 0] + table[0, 1] + table[0, 2] + table[0, 3]
for initialize i := 1, when i < n, update (increase i by 1), do:
   if table[i, 0] + table[i, 1] + table[i, 2] + table[i, 3] > p,
then:
   (increase r by 1)
return r

উদাহরণ

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

#include <bits/stdc++.h>
using namespace std;
int solve(vector<vector<int>> table){
   int n = table.size();
   int r = 1;
   int p = table[0][0] + table[0][1] + table[0][2] + table[0][3];
   for (int i = 1; i < n; i++){
      if (table[i][0] + table[i][1] + table[i][2] + table[i][3] > p)
         r++;
   }
   return r;
}
int main(){
   vector<vector<int>> table = { { 100, 98, 100, 100 }, { 100, 100, 100, 100 }, { 90, 99, 90, 100 }, { 100, 98, 60, 99 } };
   cout << solve(table) << endl;
}

ইনপুট

{ { 100, 98, 100, 100 }, { 100, 100, 100, 100 }, { 90, 99, 90, 100 }, { 100, 98, 60, 99 } }

আউটপুট

2

  1. স্কোর টেবিল থেকে শিক্ষার্থীর র‌্যাঙ্ক খুঁজতে C++ কোড

  2. সর্বাধিক স্কোর খুঁজে পেতে C++ কোড আমরা প্রথম ছাত্রকে বরাদ্দ করতে পারি

  3. C++ এ এর ​​ভাজক থেকে সংখ্যা খুঁজুন

  4. C++ এ ভাজকের তালিকা থেকে A এবং B খুঁজুন