계속 붙잡고 있다가 갑자기 딱 생각난..
//내꺼
function solution(numbers, num1, num2) {
var answer = [...numbers].slice(num1,num2+1)
return answer;
}
아래처럼 하고싶었는데 조건을 저렇게 주는건지를 몰라서.. 큭큭
//01
function solution(numbers, num1, num2) {
return numbers.filter((n, i) => num1 <= i && i <= num2);
}
그리고 그냥 for문 쓰고싶을때는 아래처럼 하면 되는거였다!
//02
function solution(numbers, num1, num2) {
var result = [];
for(var i=num1; i <= num2; i++){
result.push(numbers[i]);
}
return result;
}
//내꺼
function solution(price) {
var answer = 0;
if(price >= 100000 && price < 300000) {
answer = price*0.95;
} else if(price >= 300000 && price < 500000) {
answer = price*0.9;
} else if(price >= 500000) {
answer = price*0.8;
} else {
answer = price;
}
return Math.trunc(answer);
}
더 이쁘게 푸는 방법이 도저히 생각이 안나서 ㅎ
//01
const discounts = [
[500000, 20],
[300000, 10],
[100000, 5],
]
const solution = (price) => {
for (const discount of discounts)
if (price >= discount[0])
return Math.floor(price - price * discount[1] / 100)
return price
}
다른 사람이 작성한 위 코드를 한 번 보고..
다시 풀어봤다.
난 계속 안돼서 좀 오래걸렸다.
배열의 순서가 문제였다. ㅋㅋ 그래도 풀어서 다행 휴~
//내꺼
function solution(price) {
const array_dc = [
[500000, 0.2],
[300000, 0.1],
[100000, 0.05]
]
for(const el of array_dc){
if(price >= el[0]){
return Math.trunc(price*(1-el[1]) )
}
}
return price;
}
계속 봐왔던 코드들이 참고가 되어버려서 아래처럼 풀었다.
//내꺼
function solution(my_string, letter) {
var answer = '';
answer = [...my_string].filter(el=>el!=letter).join('')
return answer;
}
일단 다른 사람들이 푼 코드가 꽤 재밌었다.
split을 ''이거로만 써봐서 그 안에 변수를 넣어서 써볼 생각은 못했다.
//01
function solution(my_string, letter) {
const answer = my_string.split(letter).join('')
return answer;
}
그리고.. 이 코드에서는 순간 충격받음
왜냐면 내가 맨날 쓰던 코드였는데 ㅋㅋㅋ 키업이벤트랑만 연결해서 써봐서 응용자체가 안됐다;;; 휴
//02
function solution(my_string, letter) {
return my_string.replaceAll(letter, "");
}
이건.. 처음부분에 계속 나오던 패턴이라 금방 했다
//내꺼
function solution(numbers) {
let answer = 0;
numbers.sort((a,b) => b-a)
answer = numbers[0]*numbers[1]
return answer;
}
오 할줄알아! 하면서 후다닥 풀고나니..
//내꺼
function solution(n) {
var answer = [];
for(let i=0; i<=n; i++){
if(i%2!==0)
answer.push(i)
}
return answer;
}
뭔가 구리다.
다른 사람들꺼 보니..
//01
function solution(n) {
var answer = [];
for (let i = 1; i<=n; i+=2) answer.push(i)
return answer;
}
깔끔하다.
그래 굳이 모든 숫자를 돌릴 필욘 없잖아..