본문 바로가기
반응형

알고리즘45

프로그래머스 1단계 : 가운데 글자 가져오기 프로그래머스 1단계 : 가운데 글자 가져오기 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. ※ 제한사항 s는 길이가 1 이상, 100이하인 스트링입니다. ※ 입출력 예 s return "abcde" "c" "qwer" "we" function solution(s) { let answer = ''; answer = s.length % 2 === 0 ? s.slice(Math.floor(s.length / 2 - 1), s.length / 2 + 1) : s.slice(Math.floor(s.length / 2), (Math.ceil(s.length / 2))); return answer; } 문자열 s의 길이를 2로 나눈.. 2022. 11. 10.
프로그래머스 1단계 : 서울에서 김서방 찾기 프로그래머스 1단계 : 서울에서 김서방 찾기 String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다. ※ 제한사항 seoul은 길이 1 이상, 1000 이하인 배열입니다. seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다. "Kim"은 반드시 seoul 안에 포함되어 있습니다. ※ 입출력 예 seoul return ["Jane", "Kim"] "김서방은 1에 있다" function solution(seoul) { let answer = ''; answer = `김서방은 ${seoul.indexOf('K.. 2022. 11. 9.
프로그래머스 1단계 : 수박수박수박수박수박수? 프로그래머스 1단계 : 수박수박수박수박수박수? 길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다. ※ 제한사항 n은 길이 10,000이하인 자연수입니다. ※ 입출력 예 n return 3 "수박수" 4 "수박수박" function solution(n) { let answer = '' for(i = 1; i 2022. 11. 9.
프로그래머스 1단계 : 없는 숫자 더하기 프로그래머스 1단계 : 없는 숫자 더하기 0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. ※ 제한사항 1 ≤ numbers의 길이 ≤ 9 - 0 ≤ numbers의 모든 원소 ≤ 9 - numbers의 모든 원소는 서로 다릅니다. ※ 입출력 예 numbers answer [1,2,3,4,6,7,8,0] 14 [5,8,4,0,6,7,9] 6 function solution(numbers) { let answer = 0; let x = numbers.reduce((a, b) => a + b); answer = 45 - x; retur.. 2022. 11. 7.
프로그래머스 1단계 : 문자열 내 p와 y의 개수 프로그래머스 1단계 : 문자열 내 p와 y의 개수 대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. 단, 개수를 비교할 때 대문자와 소문자는 구별하지 않습니다. 예를 들어 s가 "pPoooyY"면 true를 return하고 "Pyy"라면 false를 return합니다. ※ 제한사항 문자열 s의 길이 : 50 이하의 자연수 문자열 s는 알파벳으로만 이루어져 있습니다. ※ 입출력 예 s answer "pPoooyY" true "Pyy" false // 01 // function solution(s){ // i.. 2022. 11. 5.
프로그래머스 1단계 : 음양 더하기 프로그래머스 1단계 : 음양 더하기 어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 return 하도록 solution 함수를 완성해주세요. ※ 제한사항 absolutes의 길이는 1 이상 1,000 이하입니다. - absolutes의 모든 수는 각각 1 이상 1,000 이하입니다. signs의 길이는 absolutes의 길이와 같습니다. - signs[i] 가 참이면 absolutes[i] 의 실제 정수가 양수임을, 그렇지 않으면 음수임을 의미합니다. ※ 입출력 예 absolutes signs result [4,7,12] [true,false,true .. 2022. 11. 5.
프로그래머스 1단계 : 문자열을 정수로 바꾸기 프로그래머스 1단계 : 문자열을 정수로 바꾸기 문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. ※ 제한사항 s의 길이는 1 이상 5이하입니다. s의 맨앞에는 부호(+, -)가 올 수 있습니다. s는 부호와 숫자로만 이루어져있습니다. s는 "0"으로 시작하지 않습니다. ※ 입출력 예 예를들어 str이 "1234"이면 1234를 반환하고, "-1234"이면 -1234를 반환하면 됩니다. str은 부호(+,-)와 숫자로만 구성되어 있고, 잘못된 값이 입력되는 경우는 없습니다. function solution(s) { let answer = 0; answer = parseInt(s); return answer; } parseInt()메서드로 문자열 s값을 숫자화 시키면 됩니다. .. 2022. 11. 5.
프로그래머스 1단계 : 두 정수 사이의 합 프로그래머스 1단계 : 두 정수 사이의 합 두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요. 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다. ※ 제한사항 Na와 b가 같은 경우는 둘 중 아무 수나 리턴하세요. a와 b는 -10,000,000 이상 10,000,000 이하인 정수입니다. a와 b의 대소관계는 정해져있지 않습니다. ※ 입출력 예 a b return 3 5 12 3 3 3 5 3 12 function solution(a, b) { let answer = 0; let x = []; if(a < b){ for(let i = a; i a + b, 0); } else { for(let i.. 2022. 11. 3.
프로그래머스 1단계 : 자릿수 더하기 프로그래머스 1단계 : 자릿수 더하기 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. ※ 제한사항 N의 범위 : 100,000,000 이하의 자연수 ※ 입출력 예 N answer 123 6 987 24 function solution(n) { let answer = 0; let x = n.toString().split('').map(Number); for(i = 0; i acc + parseInt(curr), 0) } 자바스크립트에서 덧셈 연산자 +를 사용할 때, 피연산자 중 어느 하나가 문자열이면 문자열이 아닌 다른 피연산자도 문자열로 타입이 변환되어 문자열을 .. 2022. 11. 2.
프로그래머스 1단계 : 자연수 뒤집어 배열로 만들기 프로그래머스 1단계 : 자연수 뒤집어 배열로 만들기 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. ※ 제한사항 n은 10,000,000,000이하인 자연수입니다. ※ 입출력 예 n return 12345 [5,4,3,2,1] function solution(n) { let answer = []; answer = n.toString().split('').reverse().map(Number); return answer; } 주어진 숫자 n값을 문자열로 변형시키고, split메서드를 사용해 각각의 문자인 배열로 저장합니다. 다음 reverse메서드로 역순으로 정렬해주고 => ['5', '4', '3', '2', '.. 2022. 11. 1.
프로그래머스 1단계 : 짝수와 홀수 프로그래머스 1단계 : 짝수와 홀수 정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수, solution을 완성해주세요. ※ 제한사항 num은 int 범위의 정수입니다. 0은 짝수입니다 ※ 입출력 예 num return 3 "Odd" 4 "Even" function solution(num) { let answer = ''; if(num % 2 == 0){ answer = 'Even'; } else { answer = 'Odd'; } return answer; } num값을 2로 나눈 나머지값이 0이면 짝수가 되므로 Even을 출력하고, 아니라면 Odd를 출력하도록 if문을 사용하여 작성합니다. 2022. 10. 31.
프로그래머스 1단계 : 약수의 합 프로그래머스 1단계 : 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. 자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다. ※ 제한사항 n은 0 이상 3000이하인 정수입니다. ※ 입출력 예 n result 12 28 5 6 function solution(n) { let answer = 0; for (let i = 1; i 2022. 10. 31.
프로그래머스 1단계 : 나머지가 1이 되는 수 찾기 프로그래머스 1단계 : 나머지가 1이 되는 수 찾기 자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다. ※ 제한사항 3 ≤ n ≤ 1,000,000 ※ 입출력 예 n result 10 3 12 11 function solution(n) { let answer = 0; for (let x = n - 1; x >= 2; x--) { if(n % x === 1) answer = x } return answer; } n값이 10, 12일 때 나머지가 1이 되도록하는 가장 작은 자연수 x는 10 % 3 == 1, 12 % 11 == 1 이므로, 3과 11이 출력되도록.. 2022. 10. 31.
프로그래머스 0단계 : 몫 구하기 프로그래머스 0단계 : 몫 구하기 정수 num1, num2가 매개변수로 주어질 때, num1을 num2로 나눈 몫을 return 하도록 solution 함수를 완성해주세요. ※ 제한사항 0 < num1 ≤ 100 0 < num2 ≤ 100 ※ 입출력 예 num1 num2 result 10 5 2 7 2 3 function solution(num1, num2) { let answer = 0; answer = Math.floor(num1 / num2); return answer; } num1을 num2로 나눈값을 수학 메서드 Math.floor()을 사용하여 소수점을 버린 값으로 계산하여 2와 3을 반환합니다. 2022. 10. 31.
프로그래머스 0단계 : 7의 개수 프로그래머스 0단계 : 7의 개수 머쓱이는 행운의 숫자 7을 가장 좋아합니다. 정수 배열 array가 매개변수로 주어질 때, 7이 총 몇 개 있는지 return 하도록 solution 함수를 완성해보세요. ※ 제한사항 1 ≤ array의 길이 ≤ 100 0 ≤ array의 원소 ≤ 100,000 ※ 입출력 예 array result [7, 77, 17] 4 [10, 29] 0 function solution(array) { return [...array.join('')].filter(a => a === '7').length; } 배열 내부에 매개변수 array변수를 전개하고 join 메서드를 통해 문자로 변환합니다. 다음 filter메서드를 사용하여 속성값이 7과 일치하는 length값을 반환하도록합니다.. 2022. 10. 31.
반응형

광고 준비중입니다.