এই টিউটোরিয়ালে, আমরা একটি প্রোগ্রাম লিখতে যাচ্ছি যা নির্বাচনে বিজয়ীকে খুঁজে বের করে। আমাদের প্রতিটি প্রার্থী নির্বাচনে যে ভোট পেয়েছে তার একটি বিন্যাস থাকবে। আসুন একটি উদাহরণ দেখি।
ইনপুট
{"A", "B", "C", "B", "A", "C", "D", "D", "A", "B", "D", "B", "A", "C", "D"}
আউটপুট
A
এখানে, A এবং B একই সংখ্যক ভোট পেয়েছেন। সেক্ষেত্রে, আমাদের তাদের নামের বর্ণানুক্রমিক ক্রম অনুসারে বিজয়ী নির্বাচন করতে হবে।
আসুন সমস্যা সমাধানের পদক্ষেপগুলি দেখি৷
৷-
ডামি ডেটা সহ স্ট্রিংয়ের একটি অ্যারে শুরু করুন৷
-
কী হিসাবে স্ট্রিং সহ একটি মানচিত্র শুরু করুন এবং মান হিসাবে int .
-
ভোট অ্যারের উপর পুনরাবৃত্তি করুন এবং প্রতিটি সদস্যের ভোট গণনা করুন। ভোট গণনা সংরক্ষণ করতে মানচিত্র ব্যবহার করুন৷
-
আমাদের সাথে ভোট গণনা আছে। নির্বাচনে বিজয়ী খুঁজে পেতে, মানচিত্রের উপর পুনরাবৃত্তি করুন এবং সর্বাধিক ভোট দিয়ে কীটি খুঁজুন।
-
যদি দুজন সদস্য একই ভোট পেয়ে থাকেন, তাহলে তাদের নাম চেক করুন।
-
বিজয়ী প্রিন্ট করুন।
উদাহরণ
আসুন কোডটি দেখি।
#include "bits/stdc++.h" using namespace std; void findElectionWinner(string votes[], int total_votes) { map<string, int> candidate_votes_count; // counting each person votes for (int i = 0; i < total_votes; i++) { candidate_votes_count[votes[i]]++; } // finding winner int max_votes = 0; string election_winner; for (auto& entry : candidate_votes_count) { string key = entry.first; int val = entry.second; // checking the votes with max votes if (val > max_votes) { // updating max votes and member max_votes = val; election_winner = key; // comparing the name if the votes are equal } else if (val == max_votes && election_winner > key) { election_winner = key; } } cout << election_winner << endl; } int main() { string votes[] = {"A", "B", "C", "B", "A", "C", "D", "D", "A", "B", "D", "B", "A"}; findElectionWinner(votes, 13); return 0; }
আউটপুট
আপনি যদি উপরের প্রোগ্রামটি চালান, তাহলে আপনি নিম্নলিখিত ফলাফল পাবেন।
A
উপসংহার
টিউটোরিয়ালে আপনার কোন প্রশ্ন থাকলে মন্তব্য বিভাগে উল্লেখ করুন।