cdtst02

skoh·2023년 2월 13일
0

1. 삼각형의 완성조건(1)

//내꺼
function solution(sides) {
    var answer = 0;
    sides.sort((a,b) => a-b)
    answer = sides[2]<sides[0]+sides[1] ? 1 : 2
    return answer;
}

배열이 3개짜리로 정해져있는 문제라 저렇게 썼는데,
임의의 갯수로 되어있는 배열이라면..

let l = (sides.length)-1;
answer = sides[l]<sides[l-1]+sides[l-2]... 

이렇게 하면.. 이걸 일일이 쓰는ㄱㅔ맞는건가..??

아 for 문을 돌려야하는구나

ㅇㅋㅇㅋ

2. 점의 위치 구하기

//내꺼
function solution(dot) {
    var answer = 0;
    answer = dot[0]>0 && dot[1]>0 ? 1 : (dot[0]<0 && dot[1]>0 ? 2 : (dot[0]<0 && dot[1]<0 ? 3 : 4))

    return answer;
}

if문으로 줄줄 풀어서 썼다가 삼항연산자로 정리해서 제출했다.
더 좋은 코드 없나 보는데 뭔가 신기하게 푼 사람 발견..

//01
function solution(dot) {
    const [num,num2] = dot;
    const check = num * num2 > 0;
    return num > 0 ? (check ? 1 : 4) : (check ? 3 : 2);
}

3. 머쓱이보다 키큰사람

//내꺼
function solution(array, height) {
    var answer = [...array].filter(e => e>height).length;
    return answer;
}

오옹...만족

4. 문자 반복 출력하기

//내꺼
function solution(my_string, n) {
    var answer = '';
    for(let i=0; i<my_string.length; i++) {
        for(let j=1; j<=n; j++){
        answer += my_string[i]
        }
    }
    return answer;
}

간단한 문법이 생각나는게 없어서 그냥 줄줄....풀어서 썼다.

//01
function solution(my_string, n) {
    var answer = [...my_string].map(v => v.repeat(n)).join("");
    console.log(answer);
    return answer;
}

아마 위에꺼처럼 하고싶었던듯

//02
function solution(my_string, n) {
    return my_string.split('').reduce((acc, cur) => acc + cur.repeat(n), '')
}

reduece 쓴 사람도 있는데 뒤에 '' 왜넣었을까?

//03
function solution(my_string, n) {
    let ans = '';
    for (let s of my_string) ans+=s.repeat(n);
    return ans;
}

내가 쓴거 + repeat()을 조합해서 깔끔하게 하면 위에처럼 될듯

5. 피자 나눠 먹기

//내꺼
function solution(slice, n) {
    var answer = Math.ceil(n/slice);
    return answer;
}

오 어떻게 뜨는지 보려고 했는데 바로 통과해버림

0개의 댓글