Bamboo is coming
프로그래머스) 유한소수 판별하기 본문
import math
def solution(a, b):
if a==b: return 1
c = b // math.gcd(a,b)
while True:
if c%2: break
c = c//2
while True:
if c%5: break
c = c//5
return 1 if c==1 else 2
// 이거는 왜 틀리는걸까?
import math
def solution(a, b):
a_pf = []
b_pf = []
sqrtnum = min(math.sqrt(a),math.sqrt(b))
aa, bb = a, b
k = 2
while k < max(a,b) or k < sqrtnum:
if bb % k == 0 :
b_pf.append(k)
bb = bb // k
if aa % k == 0:
a_pf.append(k)
aa = aa // k
else:
k+=1
for i in a_pf[:]:
print('a: {0}, b: {1}'.format(a_pf,b_pf))
print(i)
if i in b_pf:
a /= i
b /= i
a_pf.remove(i)
b_pf.remove(i)
print('a: {0}, b: {1}'.format(a,b))
answer = 2
if all(x in [2, 5] for x in b_pf):
answer = 1
return answer
'PS' 카테고리의 다른 글
프로그래머스 코딩테스트 연습 (0) | 2023.10.05 |
---|---|
백준 11720 숫자의 합 파이썬 python 문제풀이 (0) | 2022.04.28 |
프로그래머스 SQL 고득점 Kit <IS NULL> (0) | 2022.03.20 |
프로그래머스 SQL 고득점 Kit <GROUP BY> (0) | 2022.03.20 |
프로그래머스 SQL 고득점 Kit <SUM, MAX, MIN> (0) | 2022.03.20 |
Comments