কম্পিউটার টিউটোরিয়াল

সি++ কোড: সব বাল্ব জ্বালানো সম্ভব কিনা যাচাই করুন

একটি সংখ্যা m এবং একটি নেস্টেড লিস্ট A (n সাব-লিস্ট) দেওয়া আছে। mটি বাল্ব আছে, সব 처음에는 বন্ধ। nটি বাটন আছে, প্রতিটি কিছু বাল্বের সাথে সংযুক্ত। A[i] = i-তম সুইচে দিয়ে যেসব বাল্ব জ্বালানো যায় সেটি। সব বাল্ব জ্বালানো সম্ভব কিনা তা যাচাই করতে হবে।

উদাহরণ

A = [[1,4], [1,3,1], [2]], m=4 → আউটপুট: True
ব্যাখ্যা: সব সুইচ চাপলে ৪টি বাল্ব জ্বলবে।

সমাধানের ধাপসমূহ

একটি সেট s সংজ্ঞায়িত করুন
for i := 0 to A.size()-1:
    for j := 0 to A[i].size()-1:
        s-এ A[i][j] ইনসার্ট করুন
if s.size() == m: return true
else return false

সি++ কোড উদাহরণ

#include <bits/stdc++.h>
using namespace std;

bool solve(vector<vector<int>> A, int m) {
    set<int> s;
    for (int i = 0; i < A.size(); i++) {
        for (int j = 0; j < A[i].size(); j++)
            s.insert(A[i][j]);
    }
    return s.size() == m;
}

int main() {
    vector<vector<int>> A = {{1,4},{1,3,1},{2}};
    int m = 4;
    cout << solve(A, m) << endl;
}

ইনপুট

{ {1,4}, {1,3,1}, {2} }, 4

আউটপুট

1
  1. C++-এ আইসোমরফিক ট্রি (Isomorphic Tree) চেক করা

  2. C++-এ একটি সংখ্যা ৪১ দ্বারা বিভাজ্য কিনা তা যাচাই করা

  3. C++-এ একটি সংখ্যা ২৩ দ্বারা বিভাজ্য কিনা তা যাচাই করা

  4. C++-এ একটি সংখ্যা কৃষ্ণমূর্তি নম্বর (Krishnamurthy Number) কিনা তা যাচাই করা