Algorithm/문제풀이

[Python][Programmers] 기초문제_12934, 12933, 12903, 12932, 12931

Deveun 2021. 5. 6. 03:49

- [12934] 정수 제곱근 판별

import math
def solution(n):
    answer = pow(math.sqrt(n)+1,2) if math.sqrt(n)%1 == 0 else -1
    return answer

--> math 모듈의 sqrt 함수 : 제곱근 구하기 / pow 함수 : 제곱 구하기

 

- [12933] 정수 내림차순으로 배치하기

def solution(n):
    # answer = list(str(n))
    # answer.sort()
    # answer.reverse()
    # print(''.join(answer))
    # answer = int(''.join(answer))
    
    ### 간단히
    answer = list(str(n))
    answer.sort(reverse = True)
    answer = int(''.join(answer))
    return answer

--> 역정렬 : arr.sort(reverse = True) 

--> list -> string : ''.join(li)

 

- [12903] 가운데 글자 가져오기 

def solution(s):

    sta = (len(s)-1)//2
    end = sta + 1 if len(s)%2 == 1 else sta + 2
    answer = s[sta:end]
    
    ### 다른 사람 풀이 참고
    # >>> answer = str[(len(str)-1)//2:len(str)//2+1]

    return answer

 

- [12932] 자연수 뒤집어 배열로 만들기

def solution(n):
    answer = list(map(int,reversed(list(str(n)))))
    return answer

reversed(li) <-> li.reverse() : list return여부  o, x

 

- [12931] 자릿수 더하기

def solution(n):
    
    answer = sum(map(int, list(str(n))))
    return answer