[프로그래머스 / Level 1] 정수 제곱근 판별 (파이썬)

2022. 5. 14. 23:06·🎲 알고리즘 공부/프로그래머스

📝 문제

>임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다.
n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요.

입출력 예시

 

https://programmers.co.kr/learn/courses/30/lessons/12934

 

코딩테스트 연습 - 정수 제곱근 판별

임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함

programmers.co.kr

 

🎨 풀이

💡 첫 번째 시도 = 성공 코드

 

def solution(n):
    answer = 0
    num = n ** 0.5
    
    if n == int(num) ** 2:
        answer = ( int(num) + 1 ) ** 2
    else : answer = -1
    
    return answer

> 

1. n에 루트를 씌운 후 num에 넣는다.

2-1. num의 제곱이 n과 일치하는지 비교한다. (num이 양수라면 제곱했을 때 정확하게 n으로 돌아옴)

 2-2. 일치한다면 answer에 int(num) + 1 의 제곱을 넣어준 후 return한다.

 2-3. 일치하지 않으면 answer에 -1을 넣어준 후 return한다. 

 

​끝~

 

 

⭐ 느낀점

 

> 와,... 이 문제 내가 왜 테스트 케이스 이상한 걸 추가해뒀는지.. ㅋㅋㅋㅋㅋㅋ 이유는 잘 모르겠지만 ㅠㅠ 그거 때문에 문제 이해를 못했었는데,, 내 생각에는 질문하기에서 이상한 걸 보고 잘못 적용했든지 아니면 그냥 잘못 이해하고나서 이상하게 적용했든지 둘 중 하나인 거 같다. 내가 적어둔 테스트 케이스는 n = 27, answer = 38 이였다. ㅋㅋㅋㅋㅋㅋ숫자도 안 잊혀져 ㅠㅠ.  이런 이상한 실수는 한 번으로 족하다. 두 번 다시는 이런,, 말도 안되는 실수를 하지 않을 것이다. 하하.. 어쨌든 고생 참 많았다.. 잘 풀었다...

'🎲 알고리즘 공부 > 프로그래머스' 카테고리의 다른 글

[프로그래머스 / Level 2] 이진 변환 반복하기 (파이썬)  (0) 2022.09.14
[DAY 103 - 프로그래머스 / Level 2] k진수에서 소수 개수 구하기 (파이썬)  (0) 2022.07.03
[프로그래머스 / Level 1] 최소직사각형 (파이썬)  (0) 2022.05.13
[프로그래머스 / Level 1] 나머지가 1이 되는 수 찾기 (파이썬)  (0) 2022.05.12
[프로그래머스 / Level 2] 짝지어 제거하기 (파이썬)  (0) 2022.05.11
'🎲 알고리즘 공부/프로그래머스' 카테고리의 다른 글
  • [프로그래머스 / Level 2] 이진 변환 반복하기 (파이썬)
  • [DAY 103 - 프로그래머스 / Level 2] k진수에서 소수 개수 구하기 (파이썬)
  • [프로그래머스 / Level 1] 최소직사각형 (파이썬)
  • [프로그래머스 / Level 1] 나머지가 1이 되는 수 찾기 (파이썬)
듬듬
듬듬
  • 듬듬
    두드림
    듬듬
  • 전체
    오늘
    어제
    • 분류 전체보기 (280)
      • 📑 신입일기 (35)
      • 🍪 Web (1)
        • angular (1)
        • JavaScript (0)
      • 🧩 Node.js 공부 (2)
      • 🎲 알고리즘 공부 (192)
        • 프로그래머스 (76)
        • 백준 (96)
        • 코드업 (19)
      • 🎨 Tistory Customizing (1)
      • 💌 일상 (12)
        • 일상 (5)
        • 기록 (7)
      • 📜 자격증 (2)
        • 정보처리기사 (2)
      • 📗 spring boot 공부 (9)
      • 학교 공부 (20)
        • ICT 개론 (14)
        • 리눅스 (6)
      • ChatGPT 랑 놀기 (0)
  • 블로그 메뉴

    • 홈
    • 방명록
    • 글쓰기
  • 링크

    • 깃허브
  • 공지사항

  • 인기 글

  • 태그

    오블완
    6월 목표
    코테
    정보처리기사
    피보나치수
    codeup
    찬양추천
    스프링부트
    폰켓몬
    연습문제
    프로그래머스
    코드업
    일기
    행렬덧셈
    파이썬
    컨텐더스
    정처기
    충무로
    BOJ
    티스토리챌린지
    백준
    nodejs
    스프링 부트
    오버워치
    코민이
    카카오
    코린이
    50문답
    til
    신입일기
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
듬듬
[프로그래머스 / Level 1] 정수 제곱근 판별 (파이썬)
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.