본문 바로가기

programming study/Algorithm

(275)
[프로그래머스] 자연수 뒤집어 배열로 만들기 - JavaScript 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 자바스크립트 코드(나의 풀이) // 자연수 뒤집어 배열로 만들기 function solution(n) { let answer = []; const nString = String(n); for (let i = nString.length - 1; i >= 0; i--) { answer.push(parseInt(nString[i])); } return answer; } Reference 프로그래머스
[프로그래머스] 자릿수 더하기 - JavaScript 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 자바스크립트 코드(나의 풀이) // 자릿수 더하기 function solution(n) { let answer = 0; const nString = String(n); for (let i = 0; i < nString.length; i++) { answer += parseInt(nString[i]); } return answer; } Reference 프로그래머스
[프로그래머스] 이상한 문자 만들기 - JavaScript 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 자바스크립트 코드(나의 풀이) // 이상한 문자 만들기 function solution(s) { let answer = []; const sArray = s.split(' '); for (let i = 0; i < sArray.length; i++) { const character = sArray[i]; let convertCharacter = ''; for (let j = 0; j < character.length; j++) { if (j % 2 === 0) { convertCharacter += character[j].toUpperCase(); } else { convertCharacter += character[j]..
[프로그래머스] 오픈채팅방 - JavaScript 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 자바스크립트 코드(나의 풀이) // 오픈채팅방 function solution(record) { let answer = []; // 유저 아이디를 저장하는 해시 const userId = {}; // 유저 아이디가 최종으로 적용되기 전의 임시 메시지 배열 const tempMessageArray = []; // 유저의 입장, 퇴장에 따른 문구 const enterAndLeave = { Enter: '님이 들어왔습니다.', Leave: '님이 나갔습니다.' }; // record를 하나씩 접근하여 최종 유저 닉네임 찾기 for (let re of record) { const [state, uid, nickName] = re..
[프로그래머스] 카펫 - JavaScript 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 자바스크립트 코드(나의 풀이) // 카펫 function solution(brown, yellow) { let answer = []; // yellow, brown의 가로, 세로길이를 찾아내기 let yellowWidth = 0; let yellowHeight = 0; for (let i = 1; i 0) { continue; } yellowHeight = yellow / yellowWidth; // borwn의 갯수가 맞는지 확인 if ((((yellowWidth * 2) + 4) + (yellowHeight * 2)) === brown) { if (yellowWidth >= yellowHeight) { answer.p..
[프로그래머스] 모의고사 - JavaScript 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 자바스크립트 코드(나의 풀이) // 모의고사 function solution(answers) { let answer = []; // 1번 수포자 ~ 3번 수포자 const oneSupo = [1, 2, 3, 4, 5]; const twoSupo = [2, 1, 2, 3, 2, 4, 2, 5]; const threeSupo = [3, 3, 1, 1, 2, 2, 4, 4, 5, 5]; // 각 수포자가 몇점인지 체크 const oneSupoScore = answers.filter((value, index) => { return value === oneSupo[index % oneSupo.length] }).length; co..
[프로그래머스] H-Index - JavaScript 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 자바스크립트 코드(나의 풀이) // H-Index function solution(citations) { let answer = 0; // 오름차순 정렬 citations.sort((a, b) => a - b); console.log(citations) // 정렬한 배열을 하나씩 접근 for (let i = 0; i < citations.length; i++) { // 주어진 논문의 인용된 횟수 const citation = citations[i]; // 인용 횟수 const citationCount = citations.length - i; console.log(citation, citationCount) if (cit..
[프로그래머스] 가장 큰 수 - JavaScript 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 자바스크립트 코드(나의 풀이) // 가장 큰 수 function solution(numbers) { // number의 요소를 string화 const numbersString = numbers.map((num) => String(num)); // 정렬하기 numbersString.sort((a, b) => { // b + a숫자와 a + b 숫자를 비교해서 내림차순으로 정렬 return parseInt(b + a) - parseInt(a + b); }) // 만들어진 배열 문자열화 const answer = numbersString.join(''); return answer[0] === '0' ? '0' : answer..