일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 금융문자분석경진대회
- Kaggle
- 자연어처리
- 더현대서울 맛집
- Real or Not? NLP with Disaster Tweets
- 편스토랑
- AI 경진대회
- 편스토랑 우승상품
- ubuntu
- github
- 백준
- 코로나19
- Git
- 파이썬
- hackerrank
- ChatGPT
- 프로그래머스 파이썬
- 데이콘
- programmers
- 우분투
- 맥북
- Docker
- dacon
- leetcode
- Baekjoon
- SW Expert Academy
- 프로그래머스
- PYTHON
- 캐치카페
- gs25
- Today
- Total
솜씨좋은장씨
[Programmers] 제곱수 판별하기 (Python) (feat.ChatGPT) 본문

코딩 1일 1문제! 오늘의 문제는 프로그래머스의 제곱수 판별하기 입니다.
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
👨🏻💻 문제 풀이 - SOMJANG
1. 제곱근을 구하는 math 의 sqrt 를 활용하여 입력 받은 숫자의 제곱근을 구하였습니다.
2. 제곱수의 제곱근을 구하면 딱 정수로 떨어지는 점을 활용하였습니다.
3. math.sqrt 로 제곱근을 구한 다음 제곱근 값을 int -> float 으로 변환한 값과 제곱근의 값이 같은지 체크하였습니다.
4. 같으면 1을 다르면 2를 정답으로 하였습니다.
👨🏻💻 코드 (Solution) - SOMJANG
import math
def solution(n):
answer = 2
sqrt_num = math.sqrt(n)
if float(int(sqrt_num)) == sqrt_num:
answer = 1
return answer
👨🏻💻 문제 풀이 - ChatGPT
오늘도 참지 못하고 ChatGPT 에게도 풀어달라고 해보았습니다.
다음은 ChatGPT 의 풀이 입니다.
Python 내장 함수인 math 모듈을 이용하여 n의 제곱근을 구한 뒤, 이 값이 정수인지 아닌지를 판별하여 문제를 해결할 수 있습니다. 만약 n의 제곱근이 정수라면, n은 제곱수이므로 1을 반환하고, 그렇지 않으면 2를 반환합니다.
👨🏻💻 코드 (Solution) - ChatGPT
import math
def solution(n):
if math.sqrt(n).is_integer():
return 1
else:
return 2
문제를 푸는 관점 자체는 저와 같았으나
제가 몰랐던 is_integer() 라는 함수를 사용하여 math.sqrt를 통해 구한 제곱근이 정수인지 아닌지 판단하여
정수이면 1을 return 정수가 아니면 2를 return 한 점이 새로웠습니다.
GitHub - SOMJANG/CODINGTEST_PRACTICE: 1일 1문제 since 2020.02.07
1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGTEST_PRACTICE development by creating an account on GitHub.
github.com
'Programming > 코딩 1일 1문제' 카테고리의 다른 글
[Programmers] 369게임 (Python) (feat.ChatGPT) (0) | 2023.04.07 |
---|---|
[Programmers] 다음에 올 숫자 (Python) (feat.ChatGPT) (0) | 2023.04.06 |
[BaekJoon] 27889번 : 특별한 학교 이름 (Python) (0) | 2023.04.04 |
[Programmers] 2차원으로 만들기 (Python) (feat.ChatGPT) (0) | 2023.04.02 |
[BaekJoon] 3107번 : IPv6 (Python) (feat. ChatGPT) (1) | 2023.04.01 |