-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path_099.py
54 lines (49 loc) · 1.31 KB
/
_099.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
def is_greater(a, an, b, bn):
if an == bn:
return (a / b) > 0
p = min(an, bn)
if p == bn:
b = (a / b)
bn = p
an = an - p
while an > 0 and bn > 0:
if an < bn:
a = a * b
bn = bn - an
else:
b = a * b
an = an - bn
if a < 1 or b < 1: return False
return True
else:
a = (a / b)
an = p
b = (1 / b)
bn = bn - p
while an > 0 and bn > 0:
if an < bn:
a = a * b
bn = bn - an
else:
b = a * b
an = an - bn
if a < 1 or b < 1: return False
return True
f = open("./inputs/_099", "r")
lines = f.readlines()
lines = list(map(lambda x: x[:len(x)-1], lines))
numbers = list(map(lambda line: line.split(","), lines))
numbers = list(map(lambda line: list(map(int, line)), numbers))
max_line = None
max_number = None
for i in range(len(numbers)):
if max_number == None:
max_number = numbers[i]
max_line = i + 1
else:
a, an = max_number[0], max_number[1]
b, bn = numbers[i][0], numbers[i][1]
if not is_greater(a, an, b, bn):
max_number = numbers[i]
max_line = i + 1
print(max_line)