XML 1 - Find the Score

  • + 0 comments

    I don't know why, but I was pretty sure that we have to do recursive method to solve this problem. I mean, I did that, and it works. But when I see others solutions, I have seen that node.iter() just go through every line of the xml document which is, I think, better.

    Anyway, here my code :

    import sys
    import xml.etree.ElementTree as etree
    
    def get_attr_number(node):
        # your code goes here
        count = len(node.attrib)
               
        for child in node:
            count += get_attr_number(child)
            
        return count
        
    
    if __name__ == '__main__':
        sys.stdin.readline()
        xml = sys.stdin.read()
        tree = etree.ElementTree(etree.fromstring(xml))
        root = tree.getroot()
        print(get_attr_number(root))