मान लीजिए हमारे पास n लोग हैं जिन्हें 0 से n - 1 तक की संख्या से दर्शाया गया है, हमारे पास दोस्तों के टपल्स की एक सूची भी है, जहां friends[i][0] और friends[i][1] दोस्त हैं। हमें जांचना है कि क्या हर किसी का कम से कम एक दोस्त है या नहीं।
इसलिए, यदि इनपुट n = 3 friends = [[0, 1], [1, 2]] जैसा है, तो आउटपुट True होगा, क्योंकि व्यक्ति 0, व्यक्ति 1 का दोस्त है, व्यक्ति 1, व्यक्ति 0 और 2 का दोस्त है, और व्यक्ति 2, व्यक्ति 1 का दोस्त है।
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे −
- people := आकार n की एक सूची, 0 से भरी हुई
- प्रत्येक link के लिए friends में, करें
- people[link[0]] := True
- people[link[1]] := True
- प्रत्येक person के लिए people में, करें
- यदि person खाली है, तो
- False वापस करें
- यदि person खाली है, तो
- True वापस करें
बेहतर समझ के लिए निम्नलिखित कार्यान्वयन देखें −
उदाहरण
class Solution: def solve(self, n, friends): people = [0 for i in range(n)] for link in friends: people[link[0]] = True people[link[1]] = True for person in people: if not person: return False return True ob = Solution() n = 3 friends = [ [0, 1], [1, 2] ] print(ob.solve(n, friends))
इनपुट
3, [[0, 1],[1, 2]]
आउटपुट
True