Dragonball Online Goku Hand
본문 바로가기

알고리즘 도장깨기39

프로그래머스 Lv.1 "정수 제곱근 판별" 🔥 Programmers Lv.1 : 정수 제곱근 판별 🔍 문제 : " 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요. " 📎 조건 : ∙ n은 1이상, 50000000000000 이하인 양의 정수입니다. 👉🏻 My answer function solution(n) { if(Math.sqrt(n) % 1 !== 0){ return -1; } else { return(Math.sqrt(n) + 1)*(Math.sqrt(n) + 1) } } : 제곱근의 값이 1로 나누었을 때 나머지가 있으면 양의 정수 x의 제곱이 아니기 때문에 -1을.. 2022. 11. 7.
프로그래머스 Lv.1 "수박수박수박수박수박수?" 🔥 Programmers Lv.1 : 수박수박수박수박수박수? 🔍 문제 : " 길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다. " 📎 조건 : ∙ n은 길이 10,000이하인 자연수입니다. 👉🏻 My answer function solution(n) { let answer = ''; for(i=1; i { return '수박'.repeat(n/2) + (n%2 === 1 ? '수' : ''); } : 깔끔하면서 이해 쏙 코드! 2022. 11. 4.
프로그래머스 Lv.1 "서울에서 김서방 찾기" 🔥 Programmers Lv.1 : 서울에서 김서방 찾기 🔍 문제 : " String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다. " 📎 조건 : ∙ seoul은 길이 1 이상, 1000 이하인 배열입니다. ∙ seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다. ∙ "Kim"은 반드시 seoul 안에 포함되어 있습니다. 👉🏻 My answer function solution(seoul) { var answer = "김서방은 " + seoul.indexOf("Kim") + "에 있다"; return a.. 2022. 11. 2.
프로그래머스 Lv.1 "자연수 뒤집어 배열로 만들기" 🔥 Programmers Lv.1 : 자연수 뒤집어 배열로 만들기 🔍 문제 : " 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. " 📎 조건 : ∙ n은 10,000,000,000이하인 자연수입니다. 👉🏻 My answer function solution(n) { let answer =[]; let arr = String(n).split("").reverse(); for (let i = 0; i < arr.length; i++) { answer.push(Number(arr[i])); } return answer; } 01. [5,4,3,2,1]이 나오게 하기 위해서 배열로 바꾼 뒤 숫자를 문자열로 변화하여 sp.. 2022. 11. 1.
프로그래머스 Lv.1 "자릿수 더하기" 🔥 Programmers Lv.1 : 자릿수 더하기 🔍 문제 : " 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. " 📎 조건 : ∙ N의 범위 : 100,000,000 이하의 자연수 👉🏻 My answer function solution(n){ let sum = 0; let answer=String(n).split(""); for(let i=0; i acc + parseInt(curr), 0) } : reduce의 initial value는 첫 acc 값입니다. 즉, 0을 넣어서 acc 초기값을 정수화 해주는 겁니다("문자열 + 정수 = 문자열" 방지차원). .. 2022. 11. 1.
프로그래머스 Lv.1 "약수의 합" 🔥 Programmers Lv.1 : 약수의 합 🔍 문제 : " 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. " 📎 조건 : ∙ n은 0 이상 3000이하인 정수입니다. 👉🏻 My answer function solution(n) { let answer = 0; for(let i=0; i 2022. 10. 30.
프로그래머스 Lv.1 "나머지가 1이 되는 수 찾기" 🔥 Programmers Lv.1 : 나머지가 1이 되는 수 찾기 🔍 문제 : " 자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다. " 📎 조건 : ∙ 3 ≤ n ≤ 1,000,000 👉🏻 My answer function solution(n) { for(let x = 1; x 2022. 10. 30.
프로그래머스 Lv.1 "평균 구하기" 🔥 Programmers Lv.1 : 평균 구하기 🔍 문제 : " 정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. " 📎 조건 : ∙ arr은 길이 1 이상, 100 이하인 배열입니다. ∙ arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. 👉🏻 My answer function solution(arr) { var answer = 0; let sum=0; for(let i=0; i a + b) / array.length; } : Reduce메서드를 이용하여 배열의 총합을 구해준 후 길이만큼 나누어준 것입니다. 2022. 10. 30.
프로그래머스 Lv.1 "짝수와 홀수" 🔥 Programmers Lv.1 : 짝수와 홀수 🔍 문제 : " 정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수, solution을 완성해주세요. " 📎 조건 : ∙ num은 int 범위의 정수입니다. ∙ 0은 짝수입니다. 👉🏻 My answer function solution(num) { var answer = ''; if(num % 2 == 0){ answer = "Even"; } else { answer = "Odd"; } return answer; } : 수업시간에 배웠던 짝수( % : 나머지의 값이 0)와 홀수(짝수를 제외한 나머지 값들)를 통해 if문을 사용하여 답을 작성하였습니다. 👉🏻 Another ways function evenOrOdd(num.. 2022. 10. 28.