Programmers/Level 1 36

[Javascript] 프로그래머스 : 약수의 합

[Javascript] 프로그래머스 Level1 _ 약수의 합 👇🏻 Link_Click 👇🏻 시행착오 ( + 코드를 작성하면서든 생각들.) 1. for반복문으로 i를 증가시키며 나머지가 0이되는 약수를 찾아 모두를 합했다. 가장 정확한 방법으로 테스트에 통과할 수 있다! 하지만 n은 3000 이하인 정수이기 때문에 for문에서만 최대 3000번을 돌게 될 것이다! ㅠㅠ function solution(n) { var sum = 0; for(let i=1; i

Programmers/Level 1 2021.07.07

[Javascript] 프로그래머스 : 같은 숫자는 싫어

[Javascript] 프로그래머스 Level1 _ 같은 숫자는 싫어 👇🏻 Link_Click 👇🏻 시행착오 ( + 코드를 작성하면서든 생각들.) 1. 기존 배열을 돌면서 앞과 뒤의 수가 일치하면 continue하고, 달라지면 그때 새로운 배열에 push()하도록 구성했다! 이렇게만 구성해도 문제는 정확성 + 효율성 모두 통과할 수 있다. function solution(arr){ var answer = []; for(let i=0; i

Programmers/Level 1 2021.07.07

[Javascript] 프로그래머스 : 서울에서 김서방 찾기

[Javascript] 프로그래머스 Level1 _ 서울에서 김서방 찾기 👇🏻 Link_Click 👇🏻 시행착오 ( + 코드를 작성하면서든 생각들.) 1. 배열에서 일치하는 문자열 찾기 문제! 덕분에 `${answer}` 백틱을 사용해 볼 수 있었다. function solution(seoul) { var answer = seoul.indexOf("Kim"); return `김서방은 ${answer}에 있다`; } 2. indexOf() 대신 콜백 함수를 인자로 받는 findIndex()를 이용해서 찾는 값의 인덱스를 반환해봤다! function solution(seoul) { var answer = seoul.findIndex(el => el === "Kim"); return `김서방은 ${answer..

Programmers/Level 1 2021.07.06

[Javascript] 프로그래머스 : 가운데 글자 가져오기

[Javascript] 프로그래머스 Level1 _ 가운데 글자 가져오기 👇🏻 Link_Click 👇🏻 시행착오 ( + 코드를 작성하면서든 생각들.) 1. 이 문제는 다들 비슷하게 푸신 것 같다! 길이가 홀수이면 가운데 한 글자 짝수이면 두 글자를 리턴했다. 이때 원래 문자열은 바뀌지않도록 slice()함수를 사용했다. function solution(s) { var len = s.length; var mid = Math.floor(len/ 2); return (len%2)? s.charAt(mid) : s.slice(mid-1, mid+1); } ⚠️ 아래 내용은 모두 개인적인 참고 / 기록을 위한 용도입니다. 참고해주시고 편안하게 봐주세요 :) ⚠️ *** 혹시라도 잘못된 정보가 있다면 언제든지 알려..

Programmers/Level 1 2021.07.06

[Javascript] 프로그래머스 : 정수 제곱근 판별

[Javascript] 프로그래머스 Level1 _ 정수 제곱근 판별 👇🏻 Link_Click 👇🏻 시행착오 ( + 코드를 작성하면서든 생각들.) 1. 이 문제는 함수를 사용해서 간단하게 풀 수 있었다! function solution(n) { var sqrt = Math.floor(Math.sqrt(n)); if(Math.pow(sqrt, 2) == n) return Math.pow(sqrt+1, 2); else return -1; } ⚠️ 아래 내용은 모두 개인적인 참고 / 기록을 위한 용도입니다. 참고해주시고 편안하게 봐주세요 :) ⚠️ *** 혹시라도 잘못된 정보가 있다면 언제든지 알려주시면 감사하겠습니다 ! ***

Programmers/Level 1 2021.07.06

[Javascript] 프로그래머스 : 두 정수 사이의 합

[Javascript] 프로그래머스 Level1 _ 두 정수 사이의 합 👇🏻 Link_Click 👇🏻 시행착오 ( + 코드를 작성하면서든 생각들.) 1. 단순히 정수 a와 b 중 더 작은 것부터 더 큰 것 까지를 더할 수 있도록 두 수를 배열에 담아 오름차순으로 정렬한 후 반복문으로 더해주었다! function solution(a, b) { var answer = 0; //배열로 둘 중 큰 수 확인 var arr = [a, b]; arr.sort((a,b)=>a-b); for(let i = arr[0]; i 11*5 + 11 과 동일하길래 아래처럼 풀이했다! 음수 ~ 양수는 테스트할 생각을 못했었는데 Math.abs()를 사용하지 않아도 결과가 잘 나왔다. function solution(a, b) { ..

Programmers/Level 1 2021.07.06

[Javascript] 프로그래머스 : 문자열 내림차순으로 배치하기

[Javascript] 프로그래머스 Level1 _ 문자열 내림차순으로 배치하기 👇🏻 Link_Click 👇🏻 시행착오 ( + 코드를 작성하면서 든 생각들.) 1. 예제는 이미 정렬된 상태이기 때문에 //주석 처리된 코드로 실행해도 통과가 된다. 하지만 다른 테스트 케이스들처럼 정렬이 되지 않은 상태라면 틀린 코드가 된다! 그렇기 때문에 먼저 정렬을 하고 .reverse()를 통해 역순으로 정렬을 한 뒤에 합쳐줘야 한다. function solution(s) { //return s.split('').revers().join(''); return s.split('').sort().reverse().join(''); } +) 보통 우리는 역순으로 숫자를 정렬할 때 sort()에 ((a,b) => b-a );..

Programmers/Level 1 2021.07.04

[Javascript] 프로그래머스 : K번째수

[Javascript] 프로그래머스 Level1 _ K번째수 👇🏻 Link_Click 👇🏻 시행착오 ( + 코드를 작성하면서든 생각들.) 1. 일단 for반복문으로 구성하면서 문제를 파악해봤다. commands 의 내부 배열이 1개 이상이기 때문에 원본에 영향을 미치지않도록 splice() 대신 slice()를 통해 원하는 조건만큼 배열을 복사했다. 인덱스 대신 번째로 표현하고 있어서 end를 제외하고 각각 -1을 해주었다. slice()의 경우 start index ~ end index 전 까지 복사하기 때문에 end는 손대지않았다. 정확성 테스트 2번에서 막혀서 85.7점이 나왔다 ㅠㅠ function solution(array, commands) { var answer = []; var temp =..

Programmers/Level 1 2021.07.04

[Javascript] 프로그래머스 : 문자열 내 p와 y의 개수

[Javascript] 프로그래머스 Level1 _ 문자열 내 p와 y의 개수 👇🏻 Link_Click 👇🏻 시행착오 ( + 코드를 작성하면서든 생각들.) 1. 첫번째 시도는 무난하게 pCount 와 yCount 를 선언하고 map으로 배열 s를 돌면서 p,P 나 y,Y가 있을 경우 카운팅을 한 후 카운트 값이 같은지로 true / false를 리턴했다. function solution(s){ var pCount = 0; var yCount = 0; s = s.split(''); s.map((el) => { if(el == 'p' || el == 'P') pCount += 1; else if(el == 'y' || el == 'Y') yCount += 1; }); return pCount == yCoun..

Programmers/Level 1 2021.07.03

[Javascript] 프로그래머스 : 문자열을 정수로 바꾸기

[Javascript] 프로그래머스 Level1 _ 문자열을 정수로 바꾸기 👇🏻 Link_Click 👇🏻 시행착오 ( + 코드를 작성하면서든 생각들.) 1. 이게 Level 1 이지.... 역대급 간단했다. function solution(s) { return Number(s); } 2. 저번 문제를 풀 때 사용했던 [ 문자열 / 1 ] 을 통해서도 숫자로도 만들 수있다. function solution(s) { return s/1 ; } ⚠️ 아래 내용은 모두 개인적인 참고 / 기록을 위한 용도입니다. 참고해주시고 편안하게 봐주세요 :) ⚠️ *** 혹시라도 잘못된 정보가 있다면 언제든지 알려주시면 감사하겠습니다 ! ***

Programmers/Level 1 2021.07.03