기초부터 시작하는 코딩/Programmers 25

Programmers 문제를 풀어봅시다. Day19

1.한 번만 등장한 문자 문자열 s가 매개변수로 주어집니다. s에서 한 번만 등장하는 문자를 사전 순으로 정렬한 문자열을 return 하도록 solution 함수를 완성해보세요. 한 번만 등장하는 문자가 없을 경우 빈 문자열을 return 합니다. function solution(s) { let answer = []; for (let i = 0; i < s.length; i++) { if (s.indexOf(s[i]) === s.lastIndexOf(s[i])) { answer.push(s[i]) } } return answer.sort().join('') } - for 루프를 사용하여 문자열 s를 인덱스 i를 기준으로 순회합니다. - indexOf 메서드를 사용하여 s에서 문자 s[i]의 첫 번째 등장..

Programmers 문제를 풀어봅시다. Day18

1.대문자와 소문자 문자열 my_string이 매개변수로 주어질 때, 대문자는 소문자로 소문자는 대문자로 변환한 문자열을 return하도록 solution 함수를 완성해주세요. function solution(my_string) { const answer = []; for (let i = 0; i < my_string.length; i++) { const c = my_string[i]; if (c.toLowerCase() === c) { answer.push(c.toUpperCase()); } else { answer.push(c.toLowerCase()); } } return answer.join(''); } - 먼저, 빈 배열 answer를 선언합니다. 이 배열은 반전된 문자들을 저장하기 위한 용도로..

Programmers 문제를 풀어봅시다. Day17

1. 가까운 수 정수 배열 array와 정수 n이 매개변수로 주어질 때, array에 들어있는 정수 중 n과 가장 가까운 수를 return 하도록 solution 함수를 완성해주세요. function solution(array, n) { array.sort(function(a, b) { return a - b; }); let answer = 0; let com = n + 100; for (let i = 0; i < array.length; i++) { if (Math.abs(array[i] - n) < com) { com = Math.abs(array[i] - n); answer = array[i]; } } return answer; } - 함수 solution은 먼저 array를 오름차순으로 정렬합니다..

Programmers 문제를 풀어봅시다. Day16

1. 중복된 문자 제거 문자열 my_string이 매개변수로 주어집니다. my_string에서 중복된 문자를 제거하고 하나의 문자만 남긴 문자열을 return하도록 solution 함수를 완성해주세요. function solution(my_string) { let answer = ''; for (let i = 0; i < my_string.length; i++) { if (!answer.includes(my_string[i])) { answer += my_string[i]; } } return answer; } solution 함수는 주어진 문자열 my_string을 매개변수로 받습니다. answer 변수를 빈 문자열로 초기화합니다. 이 변수는 중복을 제거한 문자열을 저장할 것입니다. for 루프를 사용..

Programmers 문제를 풀어봅시다. Day15

1. 문자열 정렬하기 (1) 문자열 my_string이 매개변수로 주어질 때, my_string 안에 있는 숫자만 골라 오름차순 정렬한 리스트를 return 하도록 solution 함수를 작성해보세요. - 정답은 function solution(my_string) { my_string = my_string.replace(/[a-z]/g, ''); // 영어 소문자를 공백으로 대체 let answer = new Array(my_string.length); // 새로운 배열 answer 생성 for (let i = 0; i < my_string.length; i++) { answer[i] = parseInt(my_string.charAt(i)); // 새로운 배열에 남은 숫자를 담는다 } answer.sor..

Programmers 문제를 풀어봅시다. Day14

1. 주사위의 개수 머쓱이는 직육면체 모양의 상자를 하나 가지고 있는데 이 상자에 정육면체 모양의 주사위를 최대한 많이 채우고 싶습니다. 상자의 가로, 세로, 높이가 저장되어있는 배열 box와 주사위 모서리의 길이 정수 n이 매개변수로 주어졌을 때, 상자에 들어갈 수 있는 주사위의 최대 개수를 return 하도록 solution 함수를 완성해주세요. - 정답은 function solution(box, n) { let answer = 0; let box_W = box[0] let box_D = box[1] let box_H = box[2] let dice = n let dice_W = Math.floor(box_W / n); let dice_D = Math.floor(box_D / n); let dice_..