Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 파이썬 3
- 그래프이론
- 주간회고
- 백트랙킹
- Level1
- 알고리즘_스터디
- dp
- ODQA
- dfs
- 기술면접
- Level2_PStage
- 개인회고
- 이진탐색
- U_stage
- 알고리즘스터디
- 부스트캠프_AITech_3기
- mrc
- 프로그래머스
- 부스트캠프_AITech3기
- 백준
- 구현
- Level2
- 이코테
- 그리디
- python3
- 다이나믹프로그래밍
- 단계별문제풀이
- 정렬
- 최단경로
- 다시보기
Archives
- Today
- Total
국문과 유목민
25. 정수 제곱근 판별 본문
0. 문제
링크) https://programmers.co.kr/learn/courses/30/lessons/12934
1. 알고리즘 계획
- 제곱근 함수를 이용해서 True일 때는 문제대로 출력, False일 때는 -1출력 (삼항연산자 이용)
- 답으로 원하는 값이 정수형이기 때문에 int형변환 시켜준다.
2. 나의 코드
import math
def solution(n):
return (int(math.sqrt(n))+1)**2 if int(math.sqrt(n))**2 == n else -1
3. 다른 사람의 코드
def solution2(n):
sqrt = pow(n, 0.5)
return int(pow(sqrt + 1, 2)) if sqrt == int(sqrt) else -1
- math클래스를 import하지 않고 사용
- 제곱근은 n에 0.5를 제곱한 값임을 이용
4. 정리 및 리뷰
- 배웠던 코드 내에서 생각하여 문제를 풀었다는 점에서 잘 했다고 생각
- 0.5를 제곱하면 제곱근이 된다는 것을 알고 있었는데, 정작 문제를 풀 때는 생각나지 않았었다는 점에 스스로 놀람
코드 만족도: ★★★★★
'알고리즘_코딩테스트 > 프로그래머스_Level1' 카테고리의 다른 글
27. 최대 공약수와 최소 공배수 구하기 (0) | 2020.09.12 |
---|---|
26. 제일 작은 수 제거하기 (0) | 2020.09.12 |
24. 정수 내림차순으로 배치하기 (0) | 2020.09.11 |
23. 자연수 뒤집어 배열로 만들기 (0) | 2020.09.11 |
22. 자릿수 더하기 (0) | 2020.09.11 |
Comments