[프로그래머스] 12934 정수 제곱근 판별

최대 1 분 소요

프로그래머스 level1

문제


문제 풀이


문제 리뷰

처음에 반복문을 이용하여 문제 풀이를 했었는데,
18개의 테스트 케이스 중 11개만 통과를 했다.
(나머지는 시간 초과..)

그래서 다른 분들의 문제 풀이를 참고하니
굉장히 간단하게 풀이를 하셨다.
2개의 Math 메소드를 알아뒀더라면 쉽게 문제를 접근했을 것이다.
평소에 Math 메소드에서는 min, max, random만 사용해왔던터라
나머지 메소드들은 알지 못했다.
이번 기회에 잘 기억해두어야겠다.

sqrt는 제곱근을 반환해준다.
그래서 주어진 n의 제곱근을 해당 메소드를 통해 찾았다.
이 메소드는 double 값으로 반환해주니 형변환을 해줘야한다.

그리고 pow 메소드를 이용해서 찾은 제곱근의 제곱을 해준 값과
n이 같으면 n + 1의 제곱을 pow 메소드를 이용해 반환해주었다.
n의 제곱이 아니라면 -1을 반환해준다.


Math 클래스 메소드 정리

Math 클래스의 모든 메소드들은
정적 메소드(static method)로 클래스의 객체를 생성하지 않고
그 메소드가 정의된 클래스 이름을 통해서 호출될 수 있다.

static double sqrt(double a)
  • a의 제곱근(루트)을 반환한다.
  • a는 양수이어야 한다.


static double pow(double a, double b)
  • a의 b제곱을 반환한다.

TMI

토요일은 맑음 ʕ•ﻌ•ʔ

1일 1알고리즘 완료🤓

댓글남기기