diff options
Diffstat (limited to '2016/9b.py')
-rwxr-xr-x | 2016/9b.py | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/2016/9b.py b/2016/9b.py new file mode 100755 index 0000000..9df3005 --- /dev/null +++ b/2016/9b.py @@ -0,0 +1,21 @@ +#!/usr/bin/env python3 + +import sys + +def decomplen(s): + total=0 + i=0 + while i<len(s): + if s[i]=="(": + closeidx=s.index(")",i+1) + marker=[int(x) for x in s[i+1:closeidx].split("x")] + repstr=s[closeidx+1:closeidx+1+marker[0]] + total+=marker[1]*decomplen(repstr) + i=closeidx+1+marker[0] + else: + total+=1 + i+=1 + + return total + +print(decomplen(sys.stdin.readline()[:-1])) |