본문 바로가기

코플릿5

아이소그램인지 여부를 리턴하기 📜 문제 문자열을 입력받아 아이소그램인지 여부를 리턴해야 합니다. 아이소그램(isogram)은 각 알파벳을 한번씩만 이용해서 만든 단어나 문구를 말합니다. ⚠️ 주의사항 - 빈 문자열을 입력받은 경우, true를 리턴해야 합니다. - 대소문자는 구별하지 않습니다. ✍🏻 내 풀이 function isIsogram(str) { // 대소문자 구분을 없애기 위해 문자를 소문자로 바꿔주는 새로운 문자를 할당하는 변수 let newStr = str.toLowerCase(); // true와 false를 나타낼수 있는 result변수를 선언 let result = true; // str의 길이가 0이면 if(str.length === 0){ // result = true를 반환 return result; } for.. 2023. 4. 5.
각 요소들이 그 이전의 요소들의 합보다 큰지 여부를 리턴하기 📜 문제 수를 요소로 갖는 배열을 입력받아 각 요소들이 그 이전의 요소들의 합보다 큰지 여부를 리턴해야 합니다. ⚠️ 주의사항 - boolean 타입을 리턴해야 합니다. - arr[i]는 arr[0]부터 arr[i-1]까지의 합보다 커야 합니다. ✍🏻 내 풀이 function superIncreasing(arr) { // 초기값 설정 let sum = arr[0]; // 1번째 인덱스부터 반복해서 더해주다가 for (let i = 1; i < arr.length; i++) { // sum이 다음 인덱스보다 크거나 같다면 if (arr[i] 2023. 3. 31.
2차원 배열에서 특정 문자열의 위치정보를 요소로 갖는 배열 리턴하기 📜 문제 2차원 배열(배열을 요소로 갖는 배열)을 입력받아 'B'의 위치 정보를 요소로 갖는 배열을 리턴해야 합니다. ⚠️ 주의사항 - arr, arr[i]의 길이는 다양하게 주어집니다. - 항상 한 개의 문자열 'B'가 존재합니다. ✍🏻 내 풀이 function findBugInApples(arr) { // 문자열의 행을 순회 for(let i = 0; i < arr.length; i++) { // 문자열의 열을 순회 for(let j = 0; j < arr[i].length; j++) { // 해당 행열에 B가 있다면 if (arr[i][j] === 'B') { // 인덱스 리턴 return [i, j]; } } } } 💡 알아두면 좋을 개념 중첩 반복문 (중첩 for문)을 활용 for(let i =.. 2023. 3. 29.
문자열에 등장하는 두 칸의 공백을 모두 한 칸의 공백으로 바꾼 문자열을 리턴하기 📜 문제 문자열을 입력받아 해당 문자열에 등장하는 두 칸의 공백을 모두 한 칸의 공백으로 바꾼 문자열을 리턴해야 합니다. ⚠️ 주의사항 - 두 칸을 초과하는 공백은 존재하지 않는다고 가정합니다. ✍🏻 내 풀이 : 직전 공백 여부 판단하는 변수 선언 function convertDoubleSpaceToSingle(str) { // 빈 문자열을 입력받은 경우, 빈 문자열 리턴하는 결과값 선언 let result = ''; // 각 문자 직전 공백 여부 판단하는 변수 선언 let beforeSpace = ''; // for loop로 해당 문자열 길이만큼 순회해서 for (let i = 0; i < str.length; i++) { // 직전 문자가 공백이고, 현재 문자도 공백인 경우 (즉, 현재 문자가 두 .. 2023. 3. 23.
문자열을 구성하는 각 단어의 첫 글자가 대문자인 문자열을 리턴하기 📜 문제 문자열을 입력받아 문자열을 구성하는 각 단어의 첫 글자가 대문자인 문자열을 리턴해야 합니다. ⚠️ 주의사항 - 단어는 공백으로 구분합니다. - 연속된 공백이 존재할 수 있습니다. - 빈 문자열을 입력받은 경우, 빈 문자열을 리턴해야 합니다. ✍🏻 내 풀이 function letterCapitalize(str) { // 입력: str // 출력: 문자열을 구성하는 각 단어들의 첫 글자가 대문자로 된 문자열 리턴 // 비어있는 배열을 만들고, 전달받은 문자열을 space를 기준으로 각 단어로 잘라, 배열에 저장 let words = str.split(' '); // 위의 배열을 문자열 길이까지 for loop를 돌려 for (let i = 0; i < words.length; i++) { // 각 .. 2023. 3. 21.