Skip to content

Commit 65e710b

Browse files
author
Alison Spittel
committed
adding improvements throughout and trees
1 parent 2b4912c commit 65e710b

File tree

2 files changed

+32
-0
lines changed

2 files changed

+32
-0
lines changed

Diff for: arrays/equality_in_array.py

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
"""
2+
What is the lowest number of deletions that someone can make to have an array with all of the same elements?
3+
4+
From https://www.hackerrank.com/challenges/equality-in-a-array
5+
"""
6+
from collections import Counter
7+
8+
def n_deletions(li):
9+
c = Counter(li).most_common(1)[0][1]
10+
return len(li) - c
11+
12+
print(n_deletions([5, 5, 5, 3, 1]))

Diff for: recursion/possible_powers.py

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
"""
2+
Finds the number of ways a number can be comprised of integers to the nth power.
3+
4+
From https://www.hackerrank.com/challenges/the-power-sum
5+
"""
6+
def possible_powers_sum(n, possible_powers):
7+
if n == 0: return 1
8+
if n < 0 or not possible_powers: return 0
9+
return possible_powers_sum(n-possible_powers[0], possible_powers[1:]) + possible_powers_sum(n, possible_powers[1:])
10+
11+
12+
def powers(n, power):
13+
return [n**power for n in range(1, int(n**(1/power)+1))]
14+
15+
16+
def possible_powers(n, power):
17+
return possible_powers_sum(n, powers(n, power))
18+
19+
20+
print(possible_powers(10, 2))

0 commit comments

Comments
 (0)