Work in progress, 15 doesn't work like intended
This commit is contained in:
39
12/main.py
Normal file
39
12/main.py
Normal file
@@ -0,0 +1,39 @@
|
||||
import os
|
||||
import math
|
||||
import numpy as np
|
||||
|
||||
|
||||
# Triangle numbers are simply the sum of all natural numbers.
|
||||
# Then, find the first triangle number that has over five hundred divisors.
|
||||
|
||||
|
||||
def getTriangle(n):
|
||||
# return sum(range(1, n + 1))
|
||||
# Instead just use the formula like any normal human being
|
||||
|
||||
return int(n * (n+1) / 2)
|
||||
|
||||
def getTriangles(n):
|
||||
return [getTriangle(x) for x in range(1, n + 1)]
|
||||
|
||||
|
||||
def getNumberOfDivs(n):
|
||||
# Fuck this function
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
def main():
|
||||
print("Hello, this is Patrick")
|
||||
|
||||
ts = getTriangles(7)
|
||||
print(ts)
|
||||
|
||||
for t in ts:
|
||||
print(getNumberOfDivs(t))
|
||||
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
47
15/main.py
Normal file
47
15/main.py
Normal file
@@ -0,0 +1,47 @@
|
||||
import os
|
||||
import math
|
||||
import numpy as np
|
||||
|
||||
|
||||
# Given a grid with start in one corner and goal in opposite corner, find
|
||||
# the number of paths you can take from start to goal
|
||||
|
||||
|
||||
gs = [[0] * 21] * 21
|
||||
|
||||
def gridRoutes(x, y):
|
||||
res = 0
|
||||
|
||||
if gs[x][y] > 0:
|
||||
res = gs[x][y]
|
||||
|
||||
else:
|
||||
if x == 1:
|
||||
res = y + 1
|
||||
elif y == 1:
|
||||
res = x + 1
|
||||
else:
|
||||
res = gridRoutes(x - 1, y) + gridRoutes(x, y - 1)
|
||||
|
||||
gs[x][y] = res
|
||||
print(x, y, res)
|
||||
return res
|
||||
|
||||
def dumbGridRoutes(x, y):
|
||||
if x == 1:
|
||||
return y + 1
|
||||
elif y == 1:
|
||||
return x + 1
|
||||
else:
|
||||
return dumbGridRoutes(x, y - 1) + dumbGridRoutes(x - 1, y)
|
||||
|
||||
|
||||
def main():
|
||||
print("Hello, this is Patrick")
|
||||
|
||||
g = gridRoutes(3, 2)
|
||||
gd = dumbGridRoutes(3, 2)
|
||||
print(g, gd)
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user