여니의 취준 준비/코딩테스트 (Python)

[2021.01.08] 코드업 문제 풀기 (코딩테스트)

여니's 2021. 1. 18. 19:45


1282 : 제곱수 만들기

https://codeup.kr/problem.php?id=1282

import math
def function(num):
    k=0
    for i in range(1,num):
        if math.sqrt(num-i)%1==0:
            k=i
            num=int(math.sqrt(num-1))
            break
    print(k,num)
                     
    
#math.sqrt() : 제곱근
#math.pow() : 제곱
num=int(input(""))
function(num)

2623 : 최대공약수 구하기

https://codeup.kr/problem.php?id=2623

def function(a,b):
    suma=1
    if a>b:
        for i in range(b,1,-1):
            if a%i==0 and b%i==0:
                a=a//i
                b=b//i
                suma=suma*i
                print(i)
        if suma==1:
            print(suma)
        
    else:
        for i in range(a,1,-1):
            if a%i==0 and b%i==0:
                a=a//i
                b=b//i
                suma=suma*i
                print(i)
        if suma==1:
            print(suma)
                         
                
a,b=input("").split()
function(int(a),int(b))

"""
for범위는 => 두개의 숫자 중에서 가장 작은 숫자~1까지
(빨리 끝내야 하니까 최대한 큰 수부터 선택해서 나눈다)
만약 suma의 값이 끝까지 1일 경우 최대공약수가 1이라는 뜻
"""

 


## 1282 : 제곱수 만들기

codeup.kr/problem.php?id=1282

import math
def function(num):
    k=0
    for i in range(1,num):
        if math.sqrt(num-i)%1==0:
            k=i
            num=int(math.sqrt(num-1))
            break
    print(k,num)
                     
    
#math.sqrt() : 제곱근
#math.pow() : 제곱
num=int(input(""))
function(num)

 


1274 : 소수 판별

https://codeup.kr/problem.php?id=1274

def function(num):
    num_list=[]
    for i in range(1,num+1):
        if num%i==0:
            num_list.append(i)
    if len(num_list)==2:
        print("prime")
    else:
        print("not prime")
num1=input("")
function(int(num1))