본문 바로가기

아래로 스크롤 해주세요!

My Reference Book

-

제가 배웠던것을 한곳에 정리해보았어요!

HTML

HTML 태그 톺아보기

HTML

자세히보기

CSS

CSS 속성 톺아보기

CSS

자세히보기

JAVASCRIPT

JS 실행문 톺아보기

JAVASCRIPT

자세히보기

최신댓글

프로그래머스

프로그래머스 1단계 : 정수 제곱근 판별!

by C0Di 2022. 11. 6.
728x90

프로그래머스 1단계 : 정수 제곱근 판별!

정수와 제곱근을 판별하는 방법을 지금 이 자리에서 풀어보도록 하겠습니다
다른 분들은 대체 이거 어떻게 술술 풀고 계신거에요,,,,,,,🥲


if/sqrt를 통한 방법

sqrt를 사용하여 if의 결과를 결정지어 답을 도출해내는 방법입니다.

1. n의 제곱근이 1과 나누었을때 0이 아니라면 -1을 반환
2. 0이였다면 [n의 제곱근에 1을 더한 값]*[n의 제곱근에 1을 더한 값]의 결과를 반환합니다.

여기서 sqrt는 제곱근을 구하기 위한 메서드 입니다.

function solution(n){
    if(Math.sqrt(n)%1!==0){
        return -1;
    } else {
        return (Math.sqrt(n)+1)*(Math.sqrt(n)+1);
    }
}

for/if를 통한 방법 : 다른 사람 풀이

for/if를 사용해 답을 도출해내는 방법입니다.

1. for을 통해 i와 a는 0으로 설정하고 n의 이하가 될때까지 i를 1씩 증가시켜줍니다.
2. if 만약 n과 i를 나누었을때 i와 같다면
3. i의 값에 1을 더해준 값을 a에 넣어준 뒤
4. a와 a를 곱해준 값을 반환해줍니다.

5. 만약 n과 나누었을때 i와 같지 않았다면 answer의 값에 -1을 넣어줍니다
6. 최종적으로 answer를 반환해줍니다.

function solution(n) {
    var answer = 0;

    for(let i=0, a=0; i<=n; i++){
      if(n/i===i){
        a = i + 1
        return a*a
      } else {
        answer = -1
      }
    }

    return answer;
}
728x90
반응형

댓글

#HASH_TAGS

-

1

scroll-snap-align 오늘도 웹표준은.. 선택해주세요 오징어 두마리 포획 완료 메서드 오늘은 내가바로 오징어! ImageSlideEffect 테스트 내일은 즐거운 월요일 멈추지 않는 ' j ' 시리-즈 HTML 코드 필터선택자 울적하니 꽃을 달아봤습니다 테스트테스트 제이쿼리 공부 Method 코딩 scroll-snap-type 오징어 한마리 수확 완료! 다크모드 화사한가요? 슬라이드 결과 : 월요일 JQuery 오징어 1Kg 당 3000원 숙제가 다양해서 너무 좋아요 이건 또 뭐람 오늘 조업 마감했습니다.