SWEA 1945. 간단한 소인수분해

JeanDeluge·2023년 2월 28일

SWEA

목록 보기
4/8

풀이과정

  1. 문제에서 주어진 소수들만으로 구성된 리스트 작성 primes
  2. 소수 리스트의 각 소수로 나누어지는 횟수를 저장하는 리스트 작성 powers
  3. 각 소수가 나누어떨어질 때마다 각 소수의 제곱횟수를 센다.
  4. 해당 소수로 나누어떨어진다면 피제수의 숫자를 그 소수로 나누어서 갱신 시킨다.
  5. 더 이상 나누어떨어지지 않을때, 총 제곱횟수를 powers에 저장시킨다.
for test_case in range(1, T + 1):
    num = int(input())
    primes = [ 2, 3, 5, 7, 11]
    powers = []
    for prime in primes:
        count = 0
        while(num % prime == 0):
            num = int( num / prime )
            count += 1
        powers.append(count)
    
    print("#%d" % test_case, " ".join(map(str, powers)))

리뷰

23분 소요.

print("#{}".format(test_case))

print("#%d" % test_case ) 의 결과가 동일하다는 걸 알았다.

0개의 댓글