Skip to content

Commit 2eba86c

Browse files
committed
add tasks sprint 5
1 parent 6742b66 commit 2eba86c

File tree

2 files changed

+31
-0
lines changed

2 files changed

+31
-0
lines changed

README.md

+21
Original file line numberDiff line numberDiff line change
@@ -1724,4 +1724,25 @@ None<br>
17241724

17251725
</details>
17261726

1727+
---
1728+
1729+
<details>
1730+
<summary>
1731+
<b>Разные деревья поиска (<a href="sprint_5/number_bst.py">number_bst.py</a></b>)
1732+
</summary>
1733+
1734+
#### Условие
1735+
Ребятам стало интересно, сколько может быть различных деревьев поиска,
1736+
содержащих в своих узлах все уникальные числа от 1 до n.
1737+
Помогите им найти ответ на этот вопрос.
1738+
1739+
#### Формат ввода
1740+
В единственной строке задано число n. Оно не превосходит 20.
1741+
1742+
#### Формат вывода
1743+
Нужно вывести число, равное количеству различных деревьев поиска,
1744+
в узлах которых могут быть размещены числа от 1 до n включительно.
1745+
1746+
</details>
1747+
17271748
---

sprint_5/number_bst.py

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# (2n)! / n! * (n+1)!
2+
3+
def fac(n):
4+
if n == 0:
5+
return 1
6+
return fac(n-1) * n
7+
8+
n = int(input())
9+
10+
print(int(fac(2*n)/(fac(n)*fac(n+1))))

0 commit comments

Comments
 (0)