[programmers/CodingTest/Python]整数平方根の判別
2104 ワード
問題の説明
任意の正の整数nについて、nがある正の整数xの二乗であるか否かを判断しようとする.
nが正の整数xの平方である場合、x+1の平方を返し、nが正の整数xの平方でない場合、-1を返す関数を完了する.
せいげんじょうけん
I/O例
n return
121 144
3 -1
I/O例説明I/O例#1
121は正の整数11の二乗であるため、144に(11+1)を乗算する.
I/O例#2
3は、正の整数の二乗ではないため、-1を返します.
方法
この問題はPythonのmathからsqrtを持ってきて解決した.sqrtは平方根で除去された関数である.このときfloat形式で平方根を提供し,この平方根のis integer()により整数にできるか否かを判断し,整数にできれば平方根に1を加えて平方根を解答とし,整数にならなければ1を解答とする.
solution.py from math import sqrt
def solution(n):
answer = 0
if sqrt(n).is_integer():
answer=(sqrt(n)+1)**2
else:
answer=-1
return answer
Reference
この問題について([programmers/CodingTest/Python]整数平方根の判別), 我々は、より多くの情報をここで見つけました
https://velog.io/@xx0hn/Programmers-CodingTest-Python-정수-제곱근-판별
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
from math import sqrt
def solution(n):
answer = 0
if sqrt(n).is_integer():
answer=(sqrt(n)+1)**2
else:
answer=-1
return answer
Reference
この問題について([programmers/CodingTest/Python]整数平方根の判別), 我々は、より多くの情報をここで見つけました https://velog.io/@xx0hn/Programmers-CodingTest-Python-정수-제곱근-판별テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol