https://school.programmers.co.kr/learn/courses/30/lessons/120887?language=javascript
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
function solution(i, j, k) {
let answer = ''
for (i; i<=j; i++) {
if (i.toString().includes(k)) {
answer += i.toString().split('').filter(num => num==k)
}
}
return answer.split(',').join('').length
}
어거지로 풀었다..
function solution(i, j, k) {
let a ='';
for(i;i<=j;i++){
a += i;
}
return a.split(k).length-1;
}
간단하다.. 그냥 다 추가하고 k로 나눠주고 -1 하면 되나 보다
https://school.programmers.co.kr/learn/courses/30/lessons/120835?language=javascript
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
function solution(emergency) {
let ans = []
let array = [...emergency];
emergency.sort((a,b)=>a-b).reverse()
for (i of array) {
ans.push(emergency.indexOf(i)+1)
}
return ans;
}
다른 풀이
function solution(emergency) {
let array = [...emergency].sort((a,b)=>b-a);
return emergency.map(num => array.indexOf(num)+1)
}
이런 식으로 풀 수도 있다..
58. 한 번만 등장한 문자
https://school.programmers.co.kr/learn/courses/30/lessons/120896
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
function solution(s) {
let ans = []
ss = [...new Set(s)].sort()
for (i of ss) {
s = s.replace(i,"")
if (!s.includes(i)) {
ans.push(i)
}
}
return ans.join('');
}
다른 사람풀이
function solution(s) {
let res = [];
for (let c of s) if (s.indexOf(c) === s.lastIndexOf(c)) res.push(c);
return res.sort().join('');
}
lastIndexOf()라는 함수는 처음 본다ㅠ 이 함수를 알고 있었더라면 더 쉽게 풀었을 듯
lastIndexOf(): 마지막 요소의 위치를 알려줌
https://school.programmers.co.kr/learn/courses/30/lessons/120864
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
function solution(my_string) {
al = "abcdefghijklmnopqrstuvwxyz"
number = "123456789"
test = 0
my_string = my_string.toLowerCase()
for (i of [...al]) {
my_string = my_string.split(i).join()
}
for (i of [...number]) {
if (my_string.includes(i)) test += 1
}
if (test === 0) return test
my_string = my_string.split(",")
my_string = my_string.filter(num => parseInt(num)).reduce((a,c) => Number(a)+Number(c))
return parseInt(my_string)
ㅋㅋ..길다
다른 사람 풀이
function solution(my_string) {
return my_string.split(/\D+/).reduce((acc, cur) => acc + Number(cur), 0);
}
\D+ 이 무슨 의미지? 밑에 [a-z]와 같은 의미인가
function solution(my_string) {
return my_string.toLowerCase().replace(/[a-z]/g, " ").split(" ").map((v) => v*1).reduce((a,b) => a+b)
}
https://school.programmers.co.kr/learn/courses/30/lessons/120885?language=javascript
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
function solution(bin1, bin2) {
let bin = ''
let num = parseInt(bin1,2) + parseInt(bin2,2)
while (num >= 2) {
if (num % 2 === 0) {
bin += "0"
num = parseInt(num/2)
} else {
bin += "1"
num = parseInt(num/2)
}
}
bin += num.toString()
return [...bin].reverse().join('')
}
뭔가 더 간편하게 풀 수 있는 이진수 관련 함수가 있을까 검색해 봤는데 나의 구글링 한계인지 마땅한 게 나오지 않아 parseInt(n,2)만 활용하였는데
function solution(bin1, bin2) {
return (parseInt(bin1, 2) + parseInt(bin2, 2)).toString(2)
}
toString(2)을 하는 방법이 있었다..
기억해 놔야겠다!
| [자바스크립트/javascript] 프로그래머스 : 코딩테스트 입문 65~70문제 (0) | 2023.02.06 |
|---|---|
| [자바스크립트/javascript] 프로그래머스 : 코딩테스트 입문 61~65문제 (0) | 2023.01.24 |
| [자바스크립트/javascript] 프로그래머스 : 코딩테스트 입문 51~55문제 (0) | 2023.01.23 |
| [자바스크립트/javascript] 프로그래머스 : 코딩테스트 입문 41~50문제 (1) | 2023.01.21 |
| [자바스크립트/javascript] 프로그래머스 : 코딩테스트 입문 31~40문제 (0) | 2023.01.19 |