A prime is a positive integer X that has exactly two distinct divisors: 1 and X. The first few prime integers are 2, 3, 5, 7, 11 and 13.
A prime D is called a prime divisor of a positive integer P if there exists a positive integer K such that D * K = P. For example, 2 and 5 are prime divisors of 20.
You are given two positive integers N and M. The goal is to check whether the sets of prime divisors of integers N and M are exactly the same.
For example, given:
- N = 15 and M = 75, the prime divisors are the same: {3, 5};
- N = 10 and M = 30, the prime divisors aren't the same: {2, 5} is not equal to {2, 3, 5};
- N = 9 and M = 5, the prime divisors aren't the same: {3} is not equal to {5}.
Write a function:
def solution(A, B)
that, given two non-empty arrays A and B of Z integers, returns the number of positions K for which the prime divisors of A[K] and B[K] are exactly the same.
For example, given:
A[0] = 15 B[0] = 75 A[1] = 10 B[1] = 30 A[2] = 3 B[2] = 5the function should return 1, because only one pair (15, 75) has the same set of prime divisors.
Write an efficient algorithm for the following assumptions:
- Z is an integer within the range [1..100,000];
- each element of arrays A and B is an integer within the range [1..2,147,483,647].
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
gcd_value = gcd(max(a, b), min(a, b))
if gcd_value % (a / gcd_value) == 0 and gcd_value % (b / gcd_value) == 0:
count += 1
#print(count)
return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
gcd_value = gcd(max(a, b), min(a, b))
if gcd_value % (a / gcd_value) == 0 and gcd_value % (b / gcd_value) == 0:
count += 1
#print(count)
return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
gcd_value = gcd(max(a, b), min(a, b))
print(gcd_value)
print(a/gcd_value)
print(b/gcd_value)
if gcd_value % (a / gcd_value) == 0 and gcd_value % (b / gcd_value) == 0:
count += 1
#print(count)
return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
15 1.0 5.0 10 1.0 3.0 1 9.0 5.0
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
gcd_value = gcd(max(a, b), min(a, b))
print(gcd_value)
print(a/gcd_value)
print(b/gcd_value)
if gcd_value % (a / gcd_value) == 0 and gcd_value % (b / gcd_value) == 0:
count += 1
#print(count)
return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
gcd_value = gcd(max(a, b), min(a, b))
print(gcd_value)
print(a/gcd_value)
print(b/gcd_value)
if gcd_value % (a / gcd_value) == 0 a gcd_value % (b / gcd_value) == 0:
count += 1
#print(count)
return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
gcd_value = gcd(max(a, b), min(a, b))
print(gcd_value)
print(a/gcd_value)
print(b/gcd_value)
if gcd_value % (a / gcd_value) == gcd_value % (b / gcd_value) :
count += 1
#print(count)
return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
15 1.0 5.0 10 1.0 3.0 1 9.0 5.0
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
gcd_value = gcd(max(a, b), min(a, b))
print(gcd_value)
print(a/gcd_value)
print(b/gcd_value)
if gcd_value % (a / gcd_value) == 0 and gcd_value % (b / gcd_value) == 0:
count += 1
#print(count)
return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
15 1.0 5.0 10 1.0 3.0 1 9.0 5.0
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
gcd_value = gcd(max(a, b), min(a, b))
print(gcd_value)
print(a/gcd_value)
print(b/gcd_value)
if gcd_value % (a // gcd_value) == 0 and gcd_value % (b / gcd_value) == 0:
count += 1
#print(count)
return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
gcd_value = gcd(max(a, b), min(a, b))
print(gcd_value)
print(a/gcd_value)
print(b/gcd_value)
if gcd_value % (a // gcd_value) == 0 and gcd_value % (b // gcd_value) == 0:
count += 1
#print(count)
return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
15 1.0 5.0 10 1.0 3.0 1 9.0 5.0
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
gcd_value = gcd(max(a, b), min(a, b))
print(gcd_value)
print(a/gcd_value)
print(b/gcd_value)
gcd(max(a/gcd_value, b/))
#print(count)
return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
gcd_value = gcd(max(a, b), min(a, b))
print(gcd_value)
print(a/gcd_value)
print(b/gcd_value)
gcd(max(a/gcd_value, b/gcd_value), min(a/gcd_value, b/gcd_value))
#print(count)
return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
gcd_value = gcd(max(a, b), min(a, b))
print(gcd_value)
print(a/gcd_value)
print(b/gcd_value)
print(gcd(max(a/gcd_value, b/gcd_value), min(a/gcd_value, b/gcd_value)))
#print(count)
return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
15 1.0 5.0 1.0 10 1.0 3.0 1.0 1 9.0 5.0 1.0
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
gcd_value = gcd(max(a, b), min(a, b))
#print(gcd_value)
#print(a/gcd_value)
#print(b/gcd_value)
print(gcd(max(a/gcd_value, b/gcd_value), min(a/gcd_value, b/gcd_value)))
#print(count)
return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
1.0 1.0 1.0
15 10 1
15 10 1
15 10 1
Invalid result type, int expected, <class 'NoneType'> found.stdout:
15 10 1
Invalid result type, int expected, <class 'NoneType'> found.stdout:
15 10 1
Traceback (most recent call last): File "exec.py", line 139, in <module> main() File "exec.py", line 101, in main result = solution( A, B ) File "/tmp/solution.py", line 7, in solution print(pcd_value) NameError: name 'pcd_value' is not defined
Invalid result type, int expected, <class 'NoneType'> found.stdout:
15 15 10 10 1 1
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
gcd_value = gcd(max(a, b), min(a, b))
print(gcd_value)
print(gcd(max(a/gcd_value, gcd_value)), min(a/gcd_value, gcd_value))
#print(count)
#return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
Traceback (most recent call last): File "exec.py", line 139, in <module> main() File "exec.py", line 101, in main result = solution( A, B ) File "/tmp/solution.py", line 9, in solution print(gcd(max(a/gcd_value, gcd_value)), min(a/gcd_value, gcd_value)) TypeError: gcd() missing 1 required positional argument: 'M'stdout:
15
Invalid result type, int expected, <class 'NoneType'> found.stdout:
15 10 1
Invalid result type, int expected, <class 'NoneType'> found.stdout:
15 1.0 10 1.0 1 9.0
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a, b), min(a,b))
print(ab_gcd)
a_gcd_mod = a /gcd(a, ab_gcd)
print(a_gcd_mod)
b_gcd_mod = b
#print(count)
#return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a, b), min(a,b))
print(ab_gcd)
a_gcd_mod = a / gcd(a, ab_gcd)
print(a_gcd_mod)
b_gcd_mod = b / gcd(b, ab_gcd)
print(b_gcd_mod)
#print(count)
#return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
Invalid result type, int expected, <class 'NoneType'> found.stdout:
15 1.0 5.0 10 1.0 3.0 1 9.0 5.0
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a, b), min(a,b))
print(ab_gcd)
a_gcd_mod = a / gcd(a, ab_gcd)
print(a_gcd_mod)
b_gcd_mod = b / gcd(b, ab_gcd)
print(b_gcd_mod)
if a_gcd_mod == 1 and b_
#print(count)
#return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a, b), min(a,b))
print(ab_gcd)
a_gcd_mod = a / gcd(a, ab_gcd)
print(a_gcd_mod)
b_gcd_mod = b / gcd(b, ab_gcd)
print(b_gcd_mod)
if a_gcd_mod == 1 and b_gcd_mod == 1:
count += 1
return count
#print(count)
#return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
15 1.0 5.0 10 1.0 3.0 1 9.0 5.0
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a, b), min(a,b))
print(ab_gcd)
a_gcd_mod = a / gcd(a, ab_gcd)
print(a_gcd_mod)
b_gcd_mod = b / gcd(b, ab_gcd)
#print(b_gcd_mod)
if a_gcd_mod == 1 and b_gcd_mod == 1:
count += 1
return count
#print(count)
#return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a, b), min(a,b))
print(ab_gcd)
a_gcd_mod = a / gcd(a, ab_gcd)
print(a_gcd_mod)
b_gcd_mod = b / gcd(b, ab_gcd)
#print(b_gcd_mod)
if int(a_gcd_mod) == 1 and int(b_gcd_mod) == 1:
count += 1
return count
#print(count)
#return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
15 1.0 10 1.0 1 9.0
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a, b), min(a,b))
print(ab_gcd)
a_gcd_mod = a / gcd(a, ab_gcd)
print(a_gcd_mod)
b_gcd_mod = b / gcd(b, ab_gcd)
#print(b_gcd_mod)
if ina_gcd_mod) == 1 and int(b_gcd_mod) == 1:
count += 1
return count
#print(count)
#return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a, b), min(a,b))
print(ab_gcd)
a_gcd_mod = a / gcd(a, ab_gcd)
print(a_gcd_mod)
b_gcd_mod = b / gcd(b, ab_gcd)
print(b_gcd_mod)
#print(b_gcd_mod)
if a_gcd_mod == 1 and b_gcd_mod == 1:
count += 1
return count
#print(count)
#return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
15 1.0 5.0 10 1.0 3.0 1 9.0 5.0
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a, b), min(a,b))
print(ab_gcd)
a_gcd_mod = (a / gcd(a, ab_gcd)
print(a_gcd_mod)
b_gcd_mod = b / gcd(b, ab_gcd)
print(b_gcd_mod)
#print(b_gcd_mod)
if a_gcd_mod == 1 and b_gcd_mod == 1:
count += 1
return count
#print(count)
#return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a, b), min(a,b))
print(ab_gcd)
a_gcd_mod = gcd(a / ab_gcd , ab_gcd)
print(a_gcd_mod)
b_gcd_mod = gcd(b / ab_gcd, ab_gcd)
print(b_gcd_mod)
#print(b_gcd_mod)
if a_gcd_mod == 1 and b_gcd_mod == 1:
count += 1
return count
#print(count)
#return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a, b), min(a,b))
print(ab_gcd)
a_gcd_mod = gcd(a / ab_gcd , ab_gcd)
print(a_gcd_mod)
b_gcd_mod = gcd(b / ab_gcd, ab_gcd)
print(b_gcd_mod)
#print(b_gcd_mod)
if a_gcd_mod == 1 and b_gcd_mod == 1:
count += 1
return count
#print(count)
#return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
15 1.0 5.0 10 1.0 1.0 1 1 1
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a, b), min(a,b))
print(ab_gcd)
a_gcd_mod = gcd(a / ab_gcd , ab_gcd)
print(a_gcd_mod)
b_gcd_mod = gcd(b / ab_gcd, ab_gcd)
print(b_gcd_mod)
#print(b_gcd_mod)
if a_gcd_mod == 1 and b_gcd_mod == 1:
count += 1
return count
#print(count)
#return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
print(a, b)
ab_gcd = gcd(max(a, b), min(a,b))
print(ab_gcd)
a_gcd_mod = gcd(a / ab_gcd , ab_gcd)
print(a_gcd_mod)
b_gcd_mod = gcd(b / ab_gcd, ab_gcd)
print(b_gcd_mod)
#print(b_gcd_mod)
if a_gcd_mod == 1 and b_gcd_mod == 1:
count += 1
return count
#print(count)
#return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
15 75 15 1.0 5.0 10 30 10 1.0 1.0 9 5 1 1 1
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
print(a, b)
ab_gcd = gcd(max(a, b), min(a,b))
print(ab_gcd)
a_gcd_mod = gcd(a / ab_gcd , ab_gcd)
print(a_gcd_mod)
b_gcd_mod = gcd(b / ab_gcd, ab_gcd)
print(b_gcd_mod)
#print(b_gcd_mod)
if a_gcd_mod == 1 and b_gcd_mod == 1:
count += 1
return count
#print(count)
#return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
15 75 15 1.0 5.0 10 30 10 1.0 1.0 9 5 1 1 1
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
print(a, b)
ab_gcd = gcd(max(a, b), min(a,b))
print(ab_gcd)
if a_gcd_mod == 1 and b_gcd_mod == 1:
count += 1
return count
#print(count)
#return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
print(a, b)
ab_gcd = gcd(max(a, b), min(a,b))
print(ab_gcd)
if a_gcd_mod == 1 and b_gcd_mod == 1:
count += 1
return count
#print(count)
#return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
Traceback (most recent call last): File "exec.py", line 139, in <module> main() File "exec.py", line 101, in main result = solution( A, B ) File "/tmp/solution.py", line 9, in solution if a_gcd_mod == 1 and b_gcd_mod == 1: NameError: name 'a_gcd_mod' is not definedstdout:
15 75 15
Invalid result type, int expected, <class 'NoneType'> found.stdout:
15 75 15 10 30 10 9 5 1
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a,b), min(a,b))
a_gcd = gcd(max(a / ab_gcd, ab_gcd), min(a/ ab_gcd, ab_gcd))
b_gcd = gcd(max(b / ab_gcd, ab_gcd), min(b/ ab_gcd, ab_gcd))
print(a_gcd, b_gcd)
print(a,b, ab_gcd)
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
Invalid result type, int expected, <class 'NoneType'> found.stdout:
1.0 5.0 15 75 15 1.0 1.0 10 30 10 1 1 9 5 1
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a,b), min(a,b))
a_gcd = gcd(max(a / ab_gcd, ab_gcd), min(a/ ab_gcd, ab_gcd))
b_gcd = gcd(max(b / ab_gcd, ab_gcd), min(b/ ab_gcd, ab_gcd))
la
print(a_gcd, b_gcd)
print(a,b, ab_gcd)
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a,b), min(a,b))
a_gcd = gcd(max(a / ab_gcd, ab_gcd), min(a/ ab_gcd, ab_gcd))
b_gcd = gcd(max(b / ab_gcd, ab_gcd), min(b/ ab_gcd, ab_gcd))
last_gcd = gcd(max(a_gcd, ab_gcd), min(a_gcd))
print(a_gcd, b_gcd)
print(a,b, ab_gcd)
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a,b), min(a,b))
a_gcd = gcd(max(a / ab_gcd, ab_gcd), min(a/ ab_gcd, ab_gcd))
b_gcd = gcd(max(b / ab_gcd, ab_gcd), min(b/ ab_gcd, ab_gcd))
print(a_gcd, b_gcd)
print(a,b, ab_gcd)
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a,b), min(a,b))
a_gcd = gcd(max(a / ab_gcd, ab_gcd), min(a/ ab_gcd, ab_gcd))
b_gcd = gcd(max(b / ab_gcd, ab_gcd), min(b/ ab_gcd, ab_gcd))
print(a_gcd, b_gcd)
print(a,b, ab_gcd)
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a,b), min(a,b))
a_gcd = gcd(max(a / ab_gcd, ab_gcd), min(a/ ab_gcd, ab_gcd))
b_gcd = gcd(max(b / ab_gcd, ab_gcd), min(b/ ab_gcd, ab_gcd))
a_gcd_gcd =
print(a_gcd, b_gcd)
print(a,b, ab_gcd)
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a,b), min(a,b))
a_gcd = gcd(max(a / ab_gcd, ab_gcd), min(a/ ab_gcd, ab_gcd))
b_gcd = gcd(max(b / ab_gcd, ab_gcd), min(b/ ab_gcd, ab_gcd))
a_div_gcd =
print(a_gcd, b_gcd)
print(a,b, ab_gcd)
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a,b), min(a,b))
a_gcd = gcd(max(a / ab_gcd, ab_gcd), min(a/ ab_gcd, ab_gcd))
b_gcd = gcd(max(b / ab_gcd, ab_gcd), min(b/ ab_gcd, ab_gcd))
a_div_gcd = a / ab_gcd / a_gcd
b_div_gcd = b / ab_gcd / b_gcd
print(a_div_gcd, b_div_gcd)
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a,b), min(a,b))
a_gcd = gcd(max(a / ab_gcd, ab_gcd), min(a/ ab_gcd, ab_gcd))
b_gcd = gcd(max(b / ab_gcd, ab_gcd), min(b/ ab_gcd, ab_gcd))
a_div_gcd = a / ab_gcd / a_gcd
b_div_gcd = b / ab_gcd / b_gcd
print(a_div_gcd, b_div_gcd)
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
Invalid result type, int expected, <class 'NoneType'> found.stdout:
1.0 1.0 1.0 3.0 9.0 5.0
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a,b), min(a,b))
a_gcd = gcd(max(a / ab_gcd, ab_gcd), min(a/ ab_gcd, ab_gcd))
b_gcd = gcd(max(b / ab_gcd, ab_gcd), min(b/ ab_gcd, ab_gcd))
a_div_gcd = a / ab_gcd / a_gcd
b_div_gcd = b / ab_gcd / b_gcd
print(a_div_gcd, b_div_gcd)
if a_div_gcd == 1 and b_div_gcd:
count += 1
return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a,b), min(a,b))
a_gcd = gcd(max(a / ab_gcd, ab_gcd), min(a/ ab_gcd, ab_gcd))
b_gcd = gcd(max(b / ab_gcd, ab_gcd), min(b/ ab_gcd, ab_gcd))
a_div_gcd = a / ab_gcd / a_gcd
b_div_gcd = b / ab_gcd / b_gcd
#print(a_div_gcd, b_div_gcd)
if a_div_gcd == 1 and b_div_gcd:
count += 1
return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a,b), min(a,b))
a_gcd = gcd(max(a / ab_gcd, ab_gcd), min(a/ ab_gcd, ab_gcd))
b_gcd = gcd(max(b / ab_gcd, ab_gcd), min(b/ ab_gcd, ab_gcd))
a_div_gcd = a / ab_gcd / a_gcd
b_div_gcd = b / ab_gcd / b_gcd
#print(a_div_gcd, b_div_gcd)
if a_div_gcd == 1 and b_div_gcd == 1:
count += 1
return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a,b), min(a,b))
a_gcd = gcd(max(a / ab_gcd, ab_gcd), min(a/ ab_gcd, ab_gcd))
b_gcd = gcd(max(b / ab_gcd, ab_gcd), min(b/ ab_gcd, ab_gcd))
a_div_gcd = a / ab_gcd / a_gcd
b_div_gcd = b / ab_gcd / b_gcd
#print(a_div_gcd, b_div_gcd)
if a_div_gcd == 1 and b_div_gcd == 1:
count += 1
return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
def solution(A, B):
# write your code in Python 3.6
count = 0
for (a, b) in zip(A, B):
ab_gcd = gcd(max(a,b), min(a,b))
a_gcd = gcd(max(a / ab_gcd, ab_gcd), min(a/ ab_gcd, ab_gcd))
b_gcd = gcd(max(b / ab_gcd, ab_gcd), min(b/ ab_gcd, ab_gcd))
a_div_gcd = a / ab_gcd / a_gcd
b_div_gcd = b / ab_gcd / b_gcd
#print(a_div_gcd, b_div_gcd)
if a_div_gcd == 1 and b_div_gcd == 1:
count += 1
return count
def gcd(N, M):
if M == 0:
return N
return gcd(M, N % M)
The following issues have been detected: wrong answers.