GATE DA 2024 Set 1 — Question 38
Go beyond PYQs with Success TrackerAI-powered personalised practice and doubt support. Unlimited practice on eligible plans; AI usage limits apply.MCQ+2 / -0.67EasyRecursionFunctions, File & Error HandlingProgramming, Data Structures & AlgorithmsDictionariesData Types & Control Statements
Programming, Data Structures & Algorithms → Data Types & Control Statements → Dictionaries
Last updated
Question
Consider the following Python code:
Which ONE of the following is the output of this code?
def count(child_dict, i):
if i not in child_dict.keys():
return 1
ans = 1
for j in child_dict[i]:
ans += count(child_dict, j)
return ans
child_dict = dict()
child_dict[0] = [1,2]
child_dict[1] = [3,4,5]
child_dict[2] = [6,7,8]
print(count(child_dict,0))
Which ONE of the following is the output of this code?
Correct answer
(D) 9
Solution
The function
count calculates the size of the subtree rooted at i (including the node itself) where leaf nodes contribute 1 to the sum of their parent's count, plus 1 for the parent itself.Structure:- Node 0 has children 1, 2.
- Node 1 has children 3, 4, 5.
- Node 2 has children 6, 7, 8.
- Nodes 3, 4, 5, 6, 7, 8 are not in
child_dict, so they are leaves.
count(child_dict, 0):1.
ans starts at 1 (for node 0).2.Loop over children of 0:
[1, 2].- Call
count(child_dict, 1): ansstarts at 1 (for node 1).- Loop over children of 1:
[3, 4, 5]. count(3)returns 1 (base case).count(4)returns 1 (base case).count(5)returns 1 (base case).ansbecomes . Returns 4.- Back in
count(0),ansbecomes . - Call
count(child_dict, 2): ansstarts at 1 (for node 2).- Loop over children of 2:
[6, 7, 8]. count(6)returns 1.count(7)returns 1.count(8)returns 1.ansbecomes . Returns 4.- Back in
count(0),ansbecomes .
Continue learning with Success Tracker
A step still unclear? Work through it with support
Use Success Tracker to ask about the reasoning, then try another GATE DA question to check your understanding.
AI-powered practice· Unlimited practice on eligible plans
- PYQs with solutions
- Attempt available previous-year questions, then compare your reasoning with the worked solution. Coverage varies by stream.
- Practice that adapts
- Choose a topic, work on weaker areas and bookmark questions to revisit. Your attempts feed your progress tracking.
- AI doubt support
- Ask follow-up questions about a step or concept while practising, instead of stopping at the final answer.
Unlimited practice is available on eligible plans. Free practice and AI usage have limits; check the current plan allowances before choosing.
This page stays readable without an account. AI responses can be wrong; check them against the solution and source material.
More questions on Data Types & Control Statements
2026 Set 1 Q15Consider that the quick sort algorithm is used to sort an array of distinct randomly ordered…2026 Set 1 Q16Consider the given Python program. [code] Which of the following is the correct output of this…2026 Set 1 Q25You are given the following Pre-order and In-order traversals of a Binary Tree T with nodes E, F,…2026 Set 1 Q31Let A be a sorted array containing 1000 distinct integers. You perform a recursive binary search on…2026 Set 1 Q39A recursive function in Python is given. [code] Now, consider the following function call:…