In this XML 1 Find the Score problem You are given a valid XML document, and you have to print its score. The score is calculated by the sum of the score of each element.
Problem solution in Python 2 programming.
n = int(raw_input()) xml = "" for i in range(n): xml += raw_input() import xml.etree.ElementTree as etree tree = etree.ElementTree(etree.fromstring(xml)) score = 0 for elem in tree.iter(): score += len(elem.attrib) print score
Problem solution in Python 3 programming.
N = int(input()) def count_of_attr(root): count = len(root.attrib) for child in root: count += count_of_attr(child) return count import xml.etree.ElementTree as etree count = 0 xml = '' for i in range(N): xml += input() tree = etree.ElementTree(etree.fromstring(xml)) root = tree.getroot() count = count_of_attr(root) print(count)
Problem solution in pypy programming.
def get_attr_number(node): # your code goes here count = len(node.attrib) for x in node: count += get_attr_number(x) return count
Problem solution in pypy3 programming.
def get_attr_number(node): return len(node.attrib) + sum(get_attr_number(child) for child in node)