149. 【应-21-2·难】URL 是否允许爬取

中等 Python 2s 256MB
通过 0/0

📋 题目描述
给定 N 条 robots 规则与一个待查 URL 路径,判断是否允许爬取。 **匹配规则**: - 一条规则形如 `Allow path` 或 `Disallow path`,path 以 `/` 开头; - 若查询路径以某条规则的 path 为**前缀**,称该规则"匹配"; - 多条规则同时匹配时,**path 越长优先级越高**; - 长度相同时,**Allow 优先于 Disallow**; - 用最高优先级的那条规则做最终判定,输出 `ALLOW` 或 `DENY`; - 若没有任何规则匹配,默认输出 `ALLOW`。
📥 输入描述
第一行整数 N(0<=N<=200)。 接下来 N 行规则,每行 `Allow path` 或 `Disallow path`,类型与 path 之间一个空格。 最后一行为待查路径(以 `/` 开头)。
📤 输出描述
一行 `ALLOW` 或 `DENY`。
输入样例
2
Disallow /admin
Allow /admin/public
/admin/public/x
输出样例
ALLOW
提示:把规则按 (-len(path), 0 if Allow else 1) 排序,依次扫描,第一条 path 是查询前缀的就决定结果。

登录后提交代码

讨论区 0
登录后参与讨论

还没有讨论,来发表第一条吧!