본문 바로가기

분류 전체보기165

[백준/Python] 27323번 직사각형 문제 ■ 27323번 직사각형 문제 ■ 코드 풀이 A = int(input()) B = int(input()) print(A*B) 2023. 4. 17.
[백준/Python] 11653번 소인수분해 문제 ■ 11653번 소인수분해 문제 ■ 코드 풀이 소인수분해는 소수로 나눠줘야 합니다. 이때, 굳이 나눠주는 숫자가 소수인지를 판단하는 코드를 넣어주지 않아도 됩니다. 그냥 나눠지지 않으면 나누는 숫자(num)에 1씩 더해주고, 나눠지면 나누는 숫자를 2로 초기화해 주면 됩니다. 일단 num으로 나눈 몫이 0이 되면 num을 계속 2로 초기화시켜 줌으로써 소수일 때만 나눗셈이 이루어지도록 합니다. N = int(input()) num = 2 while N != 1: if N % num == 0: print(num) N = N // num num = 2 else: num += 1 2023. 4. 16.
[백준/Python] 2581번 소수 문제 ■ 2581번 소수 문제 ■ 코드 풀이 우선 1개의 숫자에 대해 소수인지를 판단하는 is_it_sosu 함수를 선언합니다. 1은 소수가 아니고, 특정 숫자의 절반까지만 확인하면 소수인지 알 수 있으므로 이를 참고하여 range를 설정합니다. 숫자가 소수이면 True(1)를, 소수가 아니면 False(0)을 반환합니다. M, N을 입력받습니다. for문을 돌면서 M이상 N이하 자연수 중 소수가 있으면 sum_of_sosu에 더합니다. first 변수는 최초 한 번만 실행됩니다. M부터 숫자가 커지므로, sum_of_sosu에 더해지는 최초의 소수가 곧 최솟값입니다. def is_it_sosu(num): sosu = True for i in range(2, num//2+1): if num % i == 0: .. 2023. 4. 15.