测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A27360. 父与子

填空题 较难

题目描述

父与子

题目描述

学校举办亲子运动会,所有的父亲一组,孩子一组,出场规则是:父亲组先派一个人上场之后孩子组才能派一个人上场,假设每队3个人,可能的出场策略包括5种:

父父父子子子、父父子子父子、父父子父子子、父子父父子子、父子父子父子

任意输入父子的对数n(3 <= n <= 15),计算并输出有多少种出场策略。

输入描述

输入父子对数n

输出描述

输出共有多少种出场策略

样例输入

3

样例输出

5

注意:

input()内不添加任何参数只有完全正确才可提交,若无法点击提交说明答题存在错误,可及时进行检查并修改

参考答案

# 对于给定元组,逐个判断,对元组进行切片操作,统计父和子的个数,进行比较 def is valid(tp): for i in range(n * 2): t = tp[:i + 1] father = t.count('父') son = t.count('子') if father < son: return False return True n = int(input()) arr = ['父'] * n + ['子'] * n res = [] from itertools import permutations# 获取全排列,并进行过滤操作 for a in permutations(arr,n *2): if is valid(a) and a not in res: res.append(a) print(len(res))
上一题 下一题