알고리즘 (코드카타) 4

정수 제곱근 판별

임의의 양의 정수 n에 대해,n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다.n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고,n이 양의 정수 x의 제곱이 아니라면-1을 리턴하는 함수를 완성하세요. 라는 문제를 풀었다. 나는 왜 제곱근을 루트로 알았을까..제곱근은 ±를 이야기 하는건데.. 일단 답은function solution(n) {  let x = Math.sqrt(n);    if (Number.isInteger(x)) {      return (x + 1) * (x + 1);  } else {      return -1;  }}이다. 설명을 하자면,1. 변수 x에 제곱근을 저장한다.Math.sqrt( )는 제곱근을 구하는 메서드 2. 변수 x가 정수인지 확인한다.굳이 확인하는 ..

나이 출력

이 문제만 벌써 3번째다. 코딩테스트 하는 것처럼 똑같은 조건에서한다고 그냥 풀었을 때도 틀렸고이번에는 공부했다는 가정 하에서 푼다고빡공하고 풀었을 때도 틀렸다. 계속 틀린 코드를 붙잡고 있을 수 만은 없어서다른 사람이 푼 코드로 공부를 하기로 했다.   문제 설명머쓱이는 선생님이 몇 년도에 태어났는지 궁금해졌습니다.2022년 기준 선생님의 나이 `age`가 주어질 때,선생님의 출생 연도를 return 하는 solution 함수를 완성해주세요.  제한 사항 0 나이는 태어난 연도에 1살이며매년 1월 1일마다 1살씩 증가합니다. 입출력 예ageresult401983232000  입출력 예 설명입출력 예 #1- 2022년 기준 40살이므로 1983년생입니다.입출력 예 #2- 2022년 기준 23살이므로 20..

연속 부분 수열 합의 개수

문제 설명철호는 수열을 가지고 놀기 좋아합니다.어느 날 철호는 어떤 자연수로 이루어진 원형 수열의연속하는 부분 수열의 합으로 만들 수 있는 수가 모두 몇가지인지 알아보고 싶어졌습니다.원형 수열이랑 일반적인 수열에서 처음과 끝이 연결된 형태의 수열을 말합니다.예를 들어 수열 [7, 9, 1, 1, 4]로 원형 수열을 만들면 다음과 같습니다.         원형 수열은 처음과 끝이 연결되어 끊기는 부분이 없기 때문에연속하는 부분도 일반적인 수열보다 많아집니다.원형 수열의 모든 원소 elements가 순서대로 주어질 때,원형 수열의 연속 부분 수열 합으로 만들 수 있는 수의 개수를return 하도록 solution 함수를 완성해주세요.  제한사항3 1  입출력 예elementsresults[7, 9, 1, 1..

알고리즘 첫 수업

▶ 알고리즘: 컴퓨터가 문제를 해결할 수 있도록 절차나 방법을 자세히 설명하는 과정 초등학생 천명과 축구선수 3명이 축구 대결을 한다. 초등학생의 경우 인원이 훨씬 많지만 비효율적으로 움직이고 있기 때문에 한계가 있다. 비슷하게 컴퓨터는 작업 성능은 우수하지만 정확한 명령이 없으면 일을 효율적으로 하기 힘들다.개발자는 컴퓨터가 효율적으로 동작하도록 명령을 내려야 하고 이 때 필요한 것이 알고리즘이다. ▶ 문제푸는 방법: 3문제를 2시간 1문제 ~ 5문제  ▶ 도움되는거: 좋은 코드, 자바스크립트 학습에 도움