关注
原本以为dfs肯定时间不够,还想要剪枝,但一看题目已经放水了,N、M是[1, 8]。我来个python版本的AC代码。 import sys
def str2list(string):
res = []
while string != '':
res.append(int(string[0]))
string = string[1:]
return res
def dfs(mei, create, temp):
if create == bai and not mei:
res.append(temp)
elif not mei:
return
else:
# d
dfs(mei[1:], create, temp + ['d'])
# l
dfs(mei[1:], [mei[0]] + create, temp + ['l'])
# r
dfs(mei[1:], create + [mei[0]], temp + ['r'])
data = sys.stdin.readlines()
num = len(data)
max_len = int(data[0].strip())
for i in range((num - 1) // 2):
res = []
flag = True
mei = str2list(data[1 + i * 2].strip())
bai = str2list(data[2 + i * 2].strip())
print('{')
for b in bai:
if b not in mei:
flag = False
if not flag:
print('}')
continue
dfs(mei, [], [])
for j in range(len(res)):
out = ''
for s in res[j]:
out += s + ' '
print(out[:-1])
print('}')
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 校招生月薪1W算什么水平 #
39416次浏览 215人参与
# 我和mentor的爱恨情仇 #
77249次浏览 427人参与
# “vivo”个offer #
40507次浏览 285人参与
# 如果上班像打游戏,你最想解锁什么技能 #
9341次浏览 75人参与
# 一人一个landing小技巧 #
124852次浏览 1451人参与
# 为了实习逃课值吗? #
31030次浏览 282人参与
# HR问:你期望的薪资是多少?如何回答 #
66720次浏览 649人参与
# 你见过哪些工贼行为 #
26163次浏览 133人参与
# 哪一瞬间觉得自己长大了 #
39084次浏览 494人参与
# vivo工作体验 #
28759次浏览 124人参与
# 你的秋招第一场笔试是哪家 #
257797次浏览 2023人参与
# 工作后明白的那些道理 #
22551次浏览 225人参与
# 实习吐槽大会 #
386228次浏览 2156人参与
# 被同事甩锅了怎么办 #
23758次浏览 100人参与
# 我是面试官,请用一句话让我破防 #
28138次浏览 132人参与
# 和mentor 1on1 都聊什么? #
1617次浏览 20人参与
# 中美关税战对我们有哪些影响 #
44293次浏览 372人参与
# 中美关系回暖,你会选择出海吗? #
8002次浏览 119人参与
# 你想留在一线还是回老家? #
62380次浏览 537人参与
# 华为保温 #
108928次浏览 412人参与
# 哪些行业值得去? #
6332次浏览 52人参与
查看3道真题和解析