Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- 금융문자분석경진대회
- 자연어처리
- AI 경진대회
- 맥북
- 파이썬
- Baekjoon
- leetcode
- gs25
- dacon
- ubuntu
- 데이콘
- 캐치카페
- PYTHON
- 편스토랑
- 편스토랑 우승상품
- 더현대서울 맛집
- hackerrank
- Docker
- SW Expert Academy
- 코로나19
- 우분투
- ChatGPT
- programmers
- 프로그래머스
- github
- Git
- 프로그래머스 파이썬
- Real or Not? NLP with Disaster Tweets
- 백준
- Kaggle
Archives
- Today
- Total
솜씨좋은장씨
[Programmers] 제곱수 판별하기 (Python) (feat.ChatGPT) 본문
728x90
반응형
코딩 1일 1문제! 오늘의 문제는 프로그래머스의 제곱수 판별하기 입니다.
👨🏻💻 문제 풀이 - 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 한 점이 새로웠습니다.
'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 |
Comments