瀏覽代碼

2020/19p1

master
Roderic Day 4 年之前
父節點
當前提交
03f51d7e32
共有 1 個文件被更改,包括 17 次插入0 次删除
  1. +17
    -0
      y2020/p19.py

+ 17
- 0
y2020/p19.py 查看文件

@@ -0,0 +1,17 @@
import re
import sys


def recurse(rule):
return re.sub(r'(\d+)', lambda m: f'({recurse(rules[m.group(1)])})', rule)


text = sys.stdin.read()
rules, stuff = text.split('\n\n')
rules = dict([ln.split(': ') for ln in rules.splitlines()])

ans = 0
rex = re.compile(recurse(rules['0']).replace('"', '').replace(' ', '') + '$')
for line in text.splitlines():
ans += bool(rex.match(line))
print(ans)

Loading…
取消
儲存